Toon posts:

onload functie blijft loopen, maar k heb geen while/for

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo allemaal,

ik ben bezig om een soort forum te maken waar de gebruiker in een window gewoon met CTRL-b enzo kan werken.
Dit kan heel eenvoudig met het designMode attribuut van een document.

Maar nu loop ik tegen het volgende probleem aan:

in php pagina:
code:
1
<iframe width=100% id="editorFrame" onload="initEditor('editorFrame');">TEST<?=$txt?></iframe>

Dit zorgt er voor dat het iframe op de pagina komt.
Ik zet de tekst die er in moet staan tussen de tags. Hier zit het probleem waarschijnlijk.

Nu mijn initEditor functie:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var name = "";
var N = false;

if(!document.all)
  N = true;

function initEditor(n)
{
  name = n;
  if(N)
  {
    html = document.createTextNode(document.getElementById(name).innerHTML);
    document.getElementById(name).contentWindow.document.body.innerHTML = "";
    document.getElementById(name).contentWindow.document.body.appendChild(html);
  }else
  {
    html = document.getElementById(name).innerHTML;
    document.getElementById(name).contentWindow.document.body.innerHTML = html;
  }
  document.getElementById(name).contentWindow.document.designMode = "on";    
}


Het probleem is al volgt:
in IE werkt het zoals verwacht. De tekst komt gewoon in het IFrame te staan.
In mozilla blijft hij echter steeds loopen.

Hoe kan dit? In mn functie gebruik ik geen while of for en de onload van het iframe zou maar 1x uit gevoerd moeten worden, toch??

Heeft 1 van jullie misschien een oplossing hiervoor?
Als het echt niet zou lukken, moet ik natuurlijk gewoon een pagina weer geven in de iframe en dan daar de txt ophalen, maar ik wil het eerst zo proberen...

Bvd

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Kan het zijn dat als je de innerHTML van de body opnieuw set dat de onload opnieuw getriggered word?

Verwijderd

Topicstarter
Dat zou misschien wel kunnen jah..

Ik heb nu voordat de innerHTML gewijzigd wordt de onload op "" gezet.
Nu krijg ik geen loop meer (wel vooruitgaan :)).
Maar in mozilla zie ik de 1e x dat ik de pagina laad gewoon de tekst.
Wanneer ik echter refresh, zie ik heel kort de tekst en daarna niets...

?