Avatar billede cydone Nybegynder
26. juni 2000 - 13:04 Der er 14 kommentarer og
6 løsninger

Load frames

Jeg er ikke sikker på om det er den rigtige katagori, men mit spm er som følger:
Hvis min side er opbygget af 2 frames (højre , venstre), kan jeg så på en eller anden måde altid sørge for at begge frames bliver loaded, selvom man kun linker til en side i højre frame..
ex. http://......./virksomhedforumsebesked.asp?Id=470&ForumID=16&Showsub=502 fra fx jubii?
Avatar billede skjoldby Nybegynder
26. juni 2000 - 13:37 #1
du kunne jo evt. sætte en onLoad i din body på venstre frame:

<body onload="parent.frames['left_frame_name'].location.href='menu.htm'">

Eller lave dit link således:

<a href="#" onClick="parent.frames['left_frame_name'].location.href='menu.htm'; parent.frames['right_frame_name'].location.href='indhold.htm'">link</a>

Det er godt nok et stykke tid siden jeg har leget med frames og javascript, men jeg mener det er sådan som ovenstående. Har ikke lige tid til at teste det.

skjoldet

Avatar billede doeleman Nybegynder
26. juni 2000 - 13:53 #2
3 metoder til at opdatere flere frames på én gang:
http://www.usenet.dk/oss/dk.edb.internet.webdesign/frames.html#Opdater
Avatar billede skjoldby Nybegynder
26. juni 2000 - 14:02 #3
Lidt nemt bare at smide et link ud. - Kom dog med et eksempel. :-)
Avatar billede skjoldby Nybegynder
26. juni 2000 - 14:03 #4
Desuden er der kun to metoder i dit link. Du skulle tage og læse det der står. Eksempel 1 ændre kun indholdet i en frame.

De andre to metoder, er dem som jeg er kommet med.
Avatar billede mrj615 Nybegynder
26. juni 2000 - 16:05 #5
>>>cydone Prøv denne her.
<a href="java script: parent.left.location.href='left.html';
parent.right.location.href='rightny.html';">

Du link'er godt nok til to sider,
men i den venstre frame linkes der den samme side...

Håber det kan bruges :-)
/mrj
Avatar billede cydone Nybegynder
26. juni 2000 - 18:03 #6
>>Skjoldby: Det er noget af dit jeg skal bruge tror jeg, men den virker ikke rigtig den <body onload="parent.frames['menu'].location.href='menu.html'">.
Giver en "Udført, men fejl på siden"


>>Mrj: Hvordan skal jeg bruge den du har skrevet?

Nb. Det skal jo være sådan at hvis den allerede er i frames (menu og main), så skal den ikke lave et nyt frameset i højre frame.. Det er kun når højre frame bliver åbnet udefra f.eks jubii, herinde fra etc.
Avatar billede cydone Nybegynder
26. juni 2000 - 19:48 #7
Hmmm, jeg kan ikke få nogen af jeres forslag til at virke..Får fejl
Avatar billede doeleman Nybegynder
26. juni 2000 - 19:51 #8
skjoldby >> Hvorfor er du så sur ?

Hvad er der galt i, at sende et link, der forklarer principperne samt fordele/ulemper ved metoderne, fremfor at beskrive noget "som måske er rigtigt, men ikke lige har tid til at blive testet"?

Hvis du kigger på mit link igen, vil du se, at den første metode _virkelig_ viser hvordan du kan opdatere flere frames på én gang, ved at oprette flere framesets. I mange tilfælde vil dette faktisk være optimalt, da denne ikke afhænger af om JavaScript er understøttet eller ej.

Jeg ønsker ikke at starte en verbal krig, men synes ikke lige jeg fortjener at blive hetzet :-)
Avatar billede doeleman Nybegynder
26. juni 2000 - 19:55 #9
cydone >> Kan du ikke give os et link, så vi kan se på det?
Avatar billede cydone Nybegynder
26. juni 2000 - 20:17 #10
Ja, ok..
Det er på http://www.boykot.dk ,

Link fra fx. en mail http://www.boykot.dk/virksomhedforumsebesked.asp?id=516&ForumID=16

Den sidste skal så kunne se at den ikke er i frame, og skal derfor loade frameset med menu i venstre og indlægget i højre
Avatar billede doeleman Nybegynder
26. juni 2000 - 20:33 #11
Jeg tror ikke, der er noget let løsning til dit problem.

Du er nødt til at have en form for frameset genereret vha. asp. Jeg har desværre ikke forstand på asp, men har set et eksempel i javascript + php. Måske kan du se ideen i det og selv omskrive det til asp?

http://www.anything.dk/vis_artikler.php?id=12 under "Det er ikke muligt at bogmærke sider inde i en ramme"
Avatar billede doeleman Nybegynder
27. juni 2000 - 12:52 #12
Det er noget lignende http://www.bs.dk/publikationer2.ihtml?id=704 du søger, ik?
Avatar billede cydone Nybegynder
27. juni 2000 - 14:36 #13
Jo..Det er lige nøjagtig som på: http://www.bs.dk/publikationer2.ihtml?id=704  om det er den smarteste måde og lave det ved jeg ikke..

Jeg prøver lige at kigge på det eksempel du har sendt
Avatar billede cydone Nybegynder
27. juni 2000 - 20:21 #14
Jeg kan ikke rigtig få det til at virke.. Nogen der kan lave en løsning?
Avatar billede cydone Nybegynder
28. juni 2000 - 10:52 #15
Hvis det er flere point der skal til, ryger der 100 oven i hatten.. Det er et problem jeg skal ha fundet en løsning til
Avatar billede dannymoeller Nybegynder
28. juni 2000 - 15:07 #16
du laver et javascript på din side.
<SCRIPT LANGUAGE=javascript>
<!--
function checkTopLocation(){
    if (top.location.href != "http:www.minside.dk?side=http://www.minside.dk/densidejegerpånu.asp"){
        top.location.href = "http:www.minside.asp?side=http://www.minside.dk/densidejegerpånu.asp";
    }
}
i dit frameset (som er en asp-side).
blabla.
<frame src="<%=request.querystring("side")%>"
bla.bla


//-->
</SCRIPT>
Avatar billede c9steen Nybegynder
28. juni 2000 - 16:10 #17
Alt kan laves i regulær javascript!

Du skal i din index fil (dit rammesæt) indsætte en parameter, som du checker på, om den er indlæst korrekt. M.a.o. du laver en parameter, som du føler på, for at finde ud af, om dit rammesæt er indlæst.

Samtidig skal du bygge dit framesæt op, så du kan lave en direkte tilskrivning i en aktuel ramme, hvor du indsætter den fil du ønsker, med et udefra kommende kald.

Dit rammesæt kan se således ud (frameset.htm) - skriv selv den resterende del: <header>, <html>...:

<SCRIPT LANGUAGE="JavaScript">
rammeOk=1;
gotoURL = document.location.href;
marker = gotoURL.indexOf("#")
if (marker>0) {
    gotoURL = gotoURL.substring(marker+1, gotoURL.length);
    }
else {
    gotoURL = 'startfil.htm';
    }
document.write('<FRAMESET FRAMEBORDER="0" FRAMESPACING="0" BORDER="0" COLS="120,*" ROWS="100%">');
    document.write('<FRAME SRC="menu.htm" NAME="menu" SCROLLING="auto">');
    document.write('<FRAME SRC="'+gotoURL+'" NAME="indhold" SCROLLING="auto">');
document.write('</FRAMESET>');

</SCRIPT>

I hver enkelt af dine "underfiler" indsætter du et script, der føler på, om siden er indlæst i rammesættet. Hvis ikke, skal brugeren stilles om til rammesættet og den aktuelle side indlæses i indholdsrammen.

<SCRIPT LANGUAGE="JavaScript">
rammeOk=0;
rammeOk=top.rammeOk;
if (rammeOk!=1){
top.location.href = "frameset.htm#subside.htm";
}
</SCRIPT>
Avatar billede cydone Nybegynder
01. juli 2000 - 10:36 #18
Ok...Kigger på det når jeg kommer hjem iaften/nat
Avatar billede danand Nybegynder
12. juli 2000 - 20:56 #19
Indsæt dette simple script på dine sider og tving siden ind i dit rammesæt ( Udskift evt. index.htm med filnavnet på din egen rammesætsfil! )


<HTML>
<HEAD>

<SCRIPT LANGUAGE=JAVASCRIPT>
    <!-- Skjuler scriptet for ældre browsere

    if (top.location == self.location) {
        top.location.href = "index.htm"
    }
    // Slut på kommentar, der skjuler scriptet for ældre browsere -->
</SCRIPT>

</HEAD>
<BODY BGCOLOR=WHITE>
</BODY>
</HTML>
Avatar billede cydone Nybegynder
09. august 2000 - 16:47 #20
Sorry den lange ventetid!!
>>Danand: Problemer er så bare at den indlæser rammesættet, men ikke den side jeg prøver at komme ind på.

Dvs. Hvis jeg trykker på linket http://......./virksomhedforumsebesked.asp?Id=470&ForumID=16&Showsub=502 skal den åbne mit rammesæt, samt åbne den pågældende side der er trykket på, og ikke min normale forside..

>>c9Steen: Jeg kigger lige på din løsning
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester