/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Hop ind i MIT frameset!
Fra : Uffe Holst


Dato : 28-10-01 20:51


Hej alle,

Der har lige været en tråd, der hed "Spring ud af frames", og mit problem
er lignende. Jeg har siddet og fiflet med noget JavaScript uden rigtig at
kunne få det til at virke.

For nu at gøre det simpelt. På et site har jeg en frameset liggende,
f.eks. på

http://www.domain1.dk/migselv/index.html (1)

og dette frameset indeholder to frames med navnene 'leftframe' og
'rightframe'.

Indholdet i disse frames ligger på et andet site, f.eks.

http://www.domain2.dk/migselv/rightcontents.html (2)

og så videre.

Hvis nu nogen, f.eks. via en søgemaskine, åbner (2), så vil jeg gerne
have, at siden pænt hopper ind i mit frameset (1), der som sagt ligger på
et andet site end (2), i stedet for blot at vise (2) i et fuldt vindue,
eftersom alle menuer i venstre frame jo ikke vil være medtaget.

Med mit frameset, der ser ud som:

<frameset cols="137,*" frameborder="0">
<frame src="menu.html" name="leftframe" frameborder="0">
<frame src="forside.html" name="rightframe" frameborder="0">
</frameset>

så er jeg dog bange for, at en sådan funktion altid vil vise
"forside.html", hvis der omdirigeres til mit frameset. Den side, som
en given søgemaskine har fundet, er måske ikke forsiden, men en anden
af mine sider (lad os kalde den "sideX.html", der normalt vil vælges via
menuen i den venstre frame. Jeg vil jo gerne have browseren til at vise
"sideX.html" (på site domain2.dk) i min frameset (på site domain1.dk).

Håber, at det var til at forstå. På forhånd tak.

--
Uffe Holst


 
 
jopa (28-10-2001)
Kommentar
Fra : jopa


Dato : 28-10-01 23:08

"Uffe Holst" skrev bla
Der har lige været en tråd, der hed "Spring ud af frames", og mit problem
er lignende. Jeg har siddet og fiflet med noget JavaScript uden rigtig at
kunne få det til at virke.

Ved ikke rigtigt om jeg har forstået dig rigtigt. Hvis så sæt nedenstående i
din header på de forskellige frames.
Kaldes framekiller


<script>
if (top.location == self.location)
{
top.location.href = "index.htm"
}
</script>
</head>



--
jopa
www.jp-web.dk
www.webshop-jylland.dk Gratis Butiksløsning




Knud Gert Ellentoft (29-10-2001)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 29-10-01 00:04

Sun, 28 Oct 2001 23:07:33 +0100, skrev "jopa" <j@jp-web.dk>:

>Ved ikke rigtigt om jeg har forstået dig rigtigt. Hvis så sæt nedenstående i
>din header på de forskellige frames.
>Kaldes framekiller

Ja, men det svære er, og som det der vist ønskes, ikke at havne
på indexsiden, men på den pågældende side i framesættet.
--
med venlig hilsen
Knud
http://home13.inet.tele.dk/smedpark/

Uffe Holst (29-10-2001)
Kommentar
Fra : Uffe Holst


Dato : 29-10-01 09:01


In an article of 29 Oct 2001 Knud Gert Ellentoft wrote:

> >Ved ikke rigtigt om jeg har forstået dig rigtigt. Hvis så sæt nedenstående i
> >din header på de forskellige frames.
> >Kaldes framekiller
>
> Ja, men det svære er, og som det der vist ønskes, ikke at havne
> på indexsiden, men på den pågældende side i framesættet.

Ja, det er netop det, der ønskes. :)

Beklager, hvis jeg ikke fik formuleret det så tydeligt. Om det har nogen
betydning, ved jeg ikke, men jeg fandt det væsentligt at nævnte at mit
frameset og indholdet i de forskellige frames lå på forskellige servere.
Det gjorde det jo ikke mere klart, hvad jeg spurgte om.


--
Uffe Holst


jopa (29-10-2001)
Kommentar
Fra : jopa


Dato : 29-10-01 09:57

"Uffe Holst" skrev ..

Beklager, hvis jeg ikke fik formuleret det så tydeligt. Om det har nogen
betydning, ved jeg ikke, men jeg fandt det væsentligt at nævnte at mit
frameset og indholdet i de forskellige frames lå på forskellige servere.
Det gjorde det jo ikke mere klart, hvad jeg spurgte om.


Nå men den er skisme for kringlet for min lille hjerne desværre

Du må eksperimentere



--
jopa
www.jp-web.dk
www.webshop-jylland.dk Gratis Butiksløsning




Carsten Nielsen (30-10-2001)
Kommentar
Fra : Carsten Nielsen


Dato : 30-10-01 09:06


"jopa" <j@jp-web.dk> wrote in message
news:3bdd1aa8$0$259$edfadb0f@dspool01.news.tele.dk...
> "Uffe Holst" skrev ..
>
> Beklager, hvis jeg ikke fik formuleret det så tydeligt. Om det har nogen
> betydning, ved jeg ikke, men jeg fandt det væsentligt at nævnte at mit
> frameset og indholdet i de forskellige frames lå på forskellige servere.
> Det gjorde det jo ikke mere klart, hvad jeg spurgte om.
>
>
> Nå men den er skisme for kringlet for min lille hjerne desværre
>
> Du må eksperimentere
>
>
>
> --
> jopa
> www.jp-web.dk
> www.webshop-jylland.dk Gratis Butiksløsning
>
>
>

OK, Uffe, du har et framesæt, hvor der kan være 50 forskellige højre-sider.

Problemet er at når du siger


top.location.href = "index.htm"

så får du den oprindelige højre-side, ikke den kunden fik åbnet.

Hvad hvis du kopierede selve frame-sættet i 50 eksemplarer, og angav den
ønskede højre side som højreside i de forskellige 50 framesæt ?

Så hedder det bare
top.location.href = "index49.htm"
i headeren på side49.htm

med korrekt venstre side og side 49 i højre frame.

Carsten Nielsen




Morten Abildgaard (28-10-2001)
Kommentar
Fra : Morten Abildgaard


Dato : 28-10-01 23:51

"Uffe Holst" <uhc@post6.tele.dk> skrev:
[klip]
> Hvis nu nogen, f.eks. via en søgemaskine, åbner (2), så vil jeg
> gerne have, at siden pænt hopper ind i mit frameset (1), der som
> sagt ligger på et andet site end (2), i stedet for blot at vise (2) i
> et fuldt vindue, eftersom alle menuer i venstre frame jo ikke vil
> være medtaget.
[klip]
> Håber, at det var til at forstå. På forhånd tak.

Jo, det er til forstå, og det kan også godt lade sig gøre:
Løsningen består selvsagt af 2 dele.
Den første del skal sidde i dokumenterne med indholdet som du
gerne vil have "indrammet", og den anden skal sidde i dit frameset
som skal kunne kontrolleres...
Du skal nok "fifle" en smule for at få tingene tilpasset, men dette er
hvad jeg har brugt, og du kan sikkert godt se den røde tråd i det...
Sæt dette ind i dine "indholds"-dokumenter:

<script>
if (parent.frames && parent.frames.length != 2){
parent.location='http://www.domain1.dk/?'+self.location;
}
</script>

og dette i <head>'en på dit frameset-dokument:

<script>
var uri=this.location.toString();
if(uri.indexOf('?')!=-1 && (uri.substring(uri.length-3,uri.length)=='htm')){
var Qpage='';
for(var w=(uri.indexOf('?')+1); w<uri.length; w++){Qpage+=uri.charAt(w);}
frames['rightframe'].location=Qpage;
}
</script>


mvh
morten



Uffe Holst (29-10-2001)
Kommentar
Fra : Uffe Holst


Dato : 29-10-01 14:20


In an article of 28 Oct 2001 Morten Abildgaard wrote:

> Du skal nok "fifle" en smule for at få tingene tilpasset, men dette er
> hvad jeg har brugt, og du kan sikkert godt se den røde tråd i det...

Hmmm... nu har jeg ikke det store kendskab til JavaScript. Det her er
ligesom bare lidt fritidshygge for min spejdergruppe.

Du har vel ikke et link til et sted, hvor det virker.

Man lærer nemlig meget af at kigge på andres, og i en større helhed er
det nok lidt bedre.

Men tak i hvert fald.


--
Uffe Holst


Morten Abildgaard (29-10-2001)
Kommentar
Fra : Morten Abildgaard


Dato : 29-10-01 17:39

"Uffe Holst" <uhc@post6.tele.dk> skrev:
> Hmmm... nu har jeg ikke det store kendskab til JavaScript.
> Det her er ligesom bare lidt fritidshygge for min spejdergruppe.
Det er OK...

> Du har vel ikke et link til et sted, hvor det virker.
> Man lærer nemlig meget af at kigge på andres, og i en større
> helhed er det nok lidt bedre.
> Men tak i hvert fald.

Du har så evigt ret: videbegær er en dyd

Min HP er under konstruktion, så hvis du kan se bort fra det
så se her:
http://abildgaard.org/z/sms.htm

mvh
morten


Knud Gert Ellentoft (29-10-2001)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 29-10-01 18:57

Mon, 29 Oct 2001 17:39:07 +0100, skrev "Morten Abildgaard"
<dont.send@email.no>:

>Min HP er under konstruktion, så hvis du kan se bort fra det
>så se her:
>http://abildgaard.org/z/sms.htm

Umiddelbart er der der da ikke noget, da ikke noget, som
forhindrer mig i at åbne siderne udenfor framesættet.

Når jeg laver et link til
http://abildgaard.org/jokes/main.htm, så åbner denne side da
alene og ikke i framesættet og jeg kan også åbne den i mit eget
framesæt.
--
med venlig hilsen
Knud
http://home13.inet.tele.dk/smedpark/

Morten Abildgaard (29-10-2001)
Kommentar
Fra : Morten Abildgaard


Dato : 29-10-01 19:04

"Knud Gert Ellentoft" <knudgert@mail.tele.dk> skrev:
> Umiddelbart er der der da ikke noget, da ikke noget, som
> forhindrer mig i at åbne siderne udenfor framesættet.

Hehe, nej, det var kun den ene side jeg gav linket til, som gerne skulle
indramme sig selv. Det er en gammel løsning jeg fjernede fra alle siderne,
men som nok kommer ind igen på et senere tidspunkt.
Men hvis den virker (på den ene side) så er jeg da tilfreds, for scriptet
i den side er jo ikke unikt og er derfor lige til at smide over i et eksternt
script (i en .js-fil)

- men tak for kritiken

mvh
morten


Knud Gert Ellentoft (29-10-2001)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 29-10-01 20:01

Mon, 29 Oct 2001 19:03:49 +0100, skrev "Morten Abildgaard"
<dont.send@email.no>:

>Hehe, nej, det var kun den ene side jeg gav linket til, som gerne skulle
>indramme sig selv.

Ja, men det er jo også selve framesættet, der bliver linket til
og det er jo ikke noget problem.

Det er jo stadigvæk en underside, der skal åbne i framesættet og
det gør dine ikke.
--
med venlig hilsen
Knud
http://home13.inet.tele.dk/smedpark/

Morten Abildgaard (29-10-2001)
Kommentar
Fra : Morten Abildgaard


Dato : 29-10-01 22:06

"Knud Gert Ellentoft" <knudgert@mail.tele.dk> skrev:
> Det er jo stadigvæk en underside, der skal åbne i framesættet og
> det gør dine ikke.

det gør den hos mig
Scriptet i <head>'en af index-siden ser således ud:

function reMain(){
var reTo='';
var uri=this.location.toString();
if(uri.indexOf('?')!=-1){
for(var e=(uri.indexOf("?")+1); e<uri.length; e++){ reTo+=uri.charAt(e); }
frames[2].location=reTo;
}
}

....<frameset onLoad="reMain()">...

Så kan du jo selv sætte dig til at lege videre med, men idéen er rigtig
og det er scriptet næsten også...


mvh
morten


Uffe Holst (29-10-2001)
Kommentar
Fra : Uffe Holst


Dato : 29-10-01 23:34


In an article of 29 Oct 2001 Morten Abildgaard wrote:

> > Det er jo stadigvæk en underside, der skal åbne i framesættet og
> > det gør dine ikke.
>
> det gør den hos mig

Jeg må jo også indrømme, at jeg efter mere eller mindre at have kopieret
dit byte for byte, ikke kan få det til at virke. Det er nu lykkedes mig at
få mit frameset til at virke, så den i hvert fald viser forsiden.

Men viser jeg en underside for sig selv, så forsøger den ganske fint at
hoppe hen til framesættet, men det er forsiden, der bliver vist.

Pt. ligger min framesæt hos World Online, fordi adgangen til Det Danske
Spejderkorps' server ikke er sådan lige for alle og enhver, og så er WOL
godt at bruge til sine eksperimenter :)

<http://home.worldonline.dk/~uhc>

Viser jeg en af de andre sider for sig selv, f.eks. siden:

<http://home6.inet.tele.dk/uhc/eremitage/galleri/ilejr2001_13_10_2001.html>

så forsøger browseren fint at skifte til:

<http://home.worldonline.dk/~uhc/?http://home6.inet.tele.dk/uhc/eremitage/galleri/ilejr2001_13_10_2001.html>

men browseren viser dog stadig forsiden, ganske som hvis der ikke havde
været noget angivet efter "?".

Hvorfor så det? Umiddelbart vil jeg dog give min gamle Amiga og dens
skodbrowsere skylden for problemerne, indtil jeg får lejlighed til at kigge
forbi en gang MSIE et sted.

> if(uri.indexOf('?')!=-1){
> for(var e=(uri.indexOf("?")+1); e<uri.length; e++){ reTo+=uri.charAt(e); }

Hvorfor ' det ene sted og " det andet sted?

--
Uffe Holst


Morten Abildgaard (30-10-2001)
Kommentar
Fra : Morten Abildgaard


Dato : 30-10-01 00:02

"Uffe Holst" <uhc@post6.tele.dk> skrev:

> Jeg må jo også indrømme, at jeg efter mere eller mindre at have
> kopieret dit byte for byte, ikke kan få det til at virke. Det er nu
> lykkedes mig at få mit frameset til at virke, så den i hvert fald
> viser forsiden.
Den første ting: "language=Javacript" er udgået af HTML4.01.
Brug type="text/javascript".
Og lige inden du sletter language=JavaScript, vil du se at det sidste
gåseøje (lige efter JavaScript) mangler, og det er i hvert fald en fejl
der har betydning for resten af HTML-dokumentet.

> Men viser jeg en underside for sig selv, så forsøger den ganske
> fint at hoppe hen til framesættet, men det er forsiden, der bliver vist.
Ja, og det er jo ikke det mest optimale. Vi (jeg) synes jo først det er godt
når det er den rigtige side der bliver vist i den rigtige frame, intet mindre.

> Pt. ligger min framesæt hos World Online, fordi adgangen til Det Danske
> Spejderkorps' server ikke er sådan lige for alle og enhver, og så er WOL
> godt at bruge til sine eksperimenter :)
[klip]
Prøv lige denne her:
http://home.worldonline.dk/~mabild/?http://www.google.com
og se om den (heller ikke) virker...

[klip]
> Hvorfor ' det ene sted og " det andet sted?
Ups, det er bare ham pølsen Morten A, der for det meste bruger '
men ind i mellem kommer til at bruge ". Det er jo 2 forskellige tegn
der har samme funktion, og de er begge "lige højt i hierakiet". Den
ene er ikke bedre end den anden. Til gengæld er det nødvendigt at
bruge begge typer hvis man f.eks. laver en timeout a la denne:
setTimeout("frames['mainframe'].location=reTo",1000);
Men man kan dog også sætte en \ backslash foran, sådan her:
setTimeout('frames[\'mainframe\'].location=reTo',1000);


held og lykke

mvh
morten


Uffe Holst (30-10-2001)
Kommentar
Fra : Uffe Holst


Dato : 30-10-01 13:43


In an article of 30 Oct 2001 Morten Abildgaard wrote:

> Prøv lige denne her:
> http://home.worldonline.dk/~mabild/?http://www.google.com
> og se om den (heller ikke) virker...

Nej, den virker heller ikke, så det er nok min skodbrowser. Har nu også
fået kontrolleret, at http://www.worldonline.dk/~uhc virker under MSIE,
så det ser ud til at virke.

Tusind tusind tak for hjælpen :))

--
Uffe Holst


Uffe Holst (30-10-2001)
Kommentar
Fra : Uffe Holst


Dato : 30-10-01 18:02


In an article of 28 Oct 2001 Morten Abildgaard wrote:

> Sæt dette ind i dine "indholds"-dokumenter:
>
> <script>
> if (parent.frames && parent.frames.length != 2){
> parent.location='http://www.domain1.dk/?'+self.location;
> }
> </script>

Efter nu - forhåbentlig - at have fået det til at virke, så har jeg
jo forsøgt at forstå koden. Og jeg må jo erkende, at jeg ikke forstår
den ovenstående if().

Umiddelbart - uden at forstå den - vil jeg mene, at ovenstående KUN
hopper ind i min frame, såfremt vinduet vises alene.

Jeg kunne jo egentlig også godt tænke mig, at min side ikke bliver vist
i andre folks frame, for så vil min menu jo ikke være tilgængelig. Af
ovenstående kode ser jeg nemlig intet til hinder for at stoppe siden
ind i en hvilken som helst frame, blot der er en frame så er koden
glad og tilfreds og gør ikke noget.

Så hvordan kan jeg tjekke, at det vitterligt er mit framesæt, som
indholdet vises i?

--
Uffe Holst


Knud Gert Ellentoft (30-10-2001)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 30-10-01 19:03

30 Oct 2001 17:02:11 GMT, skrev "Uffe Holst"
<uhc@post6.tele.dk>:

>Jeg kunne jo egentlig også godt tænke mig, at min side ikke bliver vist
>i andre folks frame, for så vil min menu jo ikke være tilgængelig.

Derfor bør man altid på framesæt enten sætte en eller form for
navigering på alle sider, ihvertfald de vigtige som åbner i
mainvinduet eller om ikke andet lave et link til indexsiden.
--
med venlig hilsen
Knud
http://home13.inet.tele.dk/smedpark/

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408943
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste