webForumDet fria alternativet

document.write mellan ramar

JavaScript

2 svar · 354 visningar · startad av nitro2k01

Medlem sedan aug. 20039 340 inlägg
Frågan#1

Har följande kod...

<iframe id="ifr" src="about:blank">
</iframe>
...
document.getElementById("ifr").document.write("Text");

Då förväntade jag mig att "Text" skulle skriva över allt som finns iframen. Jag vet hur document.write funkar efter att sidan har laddats.
MEN koden ovan beter sig som om document.write körs i self, alltså skrivs hela sidan över. Varför?

Medlem sedan juni 20004 308 inlägg
#2

Kan inte svara på varför, förutom att konstatera att objekt-modellen inte verkar mappa objektet på "rätt" sätt (document.getElementById("ifr") ger inte referensen till window-objektet och således funkar inte heller .location osv). Däremot fungerar;

frames["ifr"].document.write("Text");
Medlem sedan aug. 20039 340 inlägg
#3

Jojoxx vet som vanligt bäst ;)
Tack!

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)