Avatar billede Slettet bruger
11. december 2002 - 11:41 Der er 7 kommentarer og
1 løsning

smide værdi ind i <span> element når iframe er loadet

Hej!

side1.html indeholder en iframe, test.html

side1.html indeholder også et <span> element, med id="varer"

iframen test.html skal lægge teksten "bare en test" i dette element

Hvordan gør jeg det? Noget GetElementbyId(et eller andet) = 'bare en test' ?

Jeg kan se et problem i dette:

- iframen loader færdig før resten af siden, og kan derfor ikke tilgå det span element der ikke er loadet endnu.

Er det noget man bør tænke på?

Gerne en nogenlunde kompatibel løsning til IE og Netscape/Mozilla
Please :))
Avatar billede goatshrine Nybegynder
11. december 2002 - 11:51 #1
document.getElementById("varer").innerHTML='Bare en test'

sådan har jeg brugt det
Avatar billede Slettet bruger
11. december 2002 - 11:57 #2
Nu skal du jo lige tage højde for at det er en iframe (altså frames) så hvis det er noget må det være noget i stil med parent.document....men det virker ikke.

parent.document.getElementById("varer").innerHTML='Bare en test';
Avatar billede pelkjaer Nybegynder
11. december 2002 - 12:02 #3
indeholder iframen andet en teksten "bare en test"?
Avatar billede Slettet bruger
11. december 2002 - 12:03 #4
Har fået det til at virke med parent.osv...
Avatar billede pelkjaer Nybegynder
11. december 2002 - 12:09 #5
Du får det jeg kom til anyway :)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/JavaScript">
<!--
function loadPage(url, spanID) {
  if (!window.buffer) {
    var html = '';
    html +=
'<iframe id="buffer" name="buffer"><\/iframe>';
    document.body.insertAdjacentHTML('beforeEnd', html);
  }
  var frame = window.frames['buffer'];
  var html = '';
  html += '<html><body onload="top.document.all[\'' + spanID
+ '\'].innerHTML = window.buffer.document.body.innerHTML;">';
  html += '<iframe name="buffer" src="' + url + '"></iframe>';
  html += '<\/body><\/html>';
  frame.document.open();
  frame.document.write(html);
  frame.document.close();
}
//-->
</script>
</head>
<body onLoad="loadPage('test.html','mySpan'); return false;">

<span id="mySpan" style="position:absolute; overflow:auto; width:200px; height:200px; left:200px; top:200px;"></span>

</body>
Avatar billede Slettet bruger
11. december 2002 - 12:11 #6
oh my...det ser voldsomt ud? Du er godtnok blevet en haj til det js stuff :)
Avatar billede pelkjaer Nybegynder
11. december 2002 - 12:14 #7
Well, det er skam bare en modificeret google udgave, men det hjælper da at øve sig *G*
Avatar billede pelkjaer Nybegynder
11. december 2002 - 12:25 #8
anyway - det ser kun ud til at fungere i IE http://peterelkjaer.dk/exp/elbarto.html - troede godt nok at NS var med, men måske er min 6'er for gammel..
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