Avatar billede xoop Nybegynder
26. juli 2003 - 21:03 Der er 5 kommentarer og
1 løsning

Hvordan henter man noget i iframe fra main-frame?

Hej.

Min hjemmeside er delt op i frames(top,left,main,right,bottom), hvor siderne så vises i main-framet. I top-framet har et iframe. I dette iframe er det menningen at titlen på de sider der vises i main-framet skal vises. Hvordan kan man dette???

Jeg tænkte på noget i denne retning af:
<script type="text/javascript">document.write(''+.parent.main.document.title+'');</script>
men virker ikke??

Jeg kan godt hente titlen på iframet i top-framet ved:
documet.title

og titlen på top-framet ved:
parent.document.title

samt titlen i index filen, hvor framsettet ligger ved:
parent.parent.document.title
Avatar billede dreamcode Nybegynder
26. juli 2003 - 21:12 #1
efter at dokumentet i iframen er loaded kan du sige

var iframe = document.getElementById("iframeID").contentWindow

så er det bare at spadsere nede i gennem DOM'en derfra dvs

iframe.document..... etc etc

-DC
Avatar billede xoop Nybegynder
26. juli 2003 - 21:23 #2
Undskyld med jeg skal have det klippet lidt mere ud i pap.... Er ikke lige en mester til dette..
Avatar billede xoop Nybegynder
26. juli 2003 - 21:54 #3
Jeg kan ikke få det til virke....!
Avatar billede xoop Nybegynder
27. juli 2003 - 15:26 #4
Har selv løst det nu.... Gør det ved at gemme titlen på main-framet i top-framet i en variable. Og henter så variablen fra top-framet i iframet og udskriver den der.

Men tak alligevel dreamcode!
Avatar billede dreamcode Nybegynder
27. juli 2003 - 15:46 #5
Main dokument

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
</head>

<body>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
var iframe = null;
function getFromIframe(){
    if (iframe){
        alert(iframe.document.title);       
    }
}
function getSpanFromIframe(){
    if (iframe){
        alert(iframe.document.getElementById("testSpan").innerText);       
    }
}
//-->
</SCRIPT>
<iframe src="test.htm"></iframe><p>
<input type="button" value="Hent titel fra iframe dokument" onclick="getFromIframe();">
<input type="button" value="Hent indhold af span tag" onclick="getSpanFromIframe();">
</body>
</html>


Iframe Dokument

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Titlen der skal hentes</title>
</head>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
onload = init;
function init(){
    parent.iframe = this;
}
//-->
</SCRIPT>

<body>
<span id="testSpan">Her er noget andet indhold</span>


</body>
</html>
Avatar billede xoop Nybegynder
27. juli 2003 - 17:37 #6
Hej, min løsning kræver at man opdater top-framet, hvilke er irriterende, da der ligger billeder der. Din løsning virker fint. Men titlen i iframe skal ikke hentes i main-framet. Det er lige omvendt og så skal det ikke fungere ved knapper, men en onload i main-framet.
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