Dans le code suivant, l'alerte fonctionne correctement et imprime "DIV: IFRAME" comme il se doit, mais il indique ensuite que cNs [1] .childNodes [1] .document n'a aucune propriété.accès iframe avec DOM
Html:
<div id="WinContainer">
<div style="display: none;"><iframe id="frame1" name="frame1"></iframe></div>
<div style="display: none;"><iframe id="frame2" name="frame2"></iframe></div>
</div>
JavaScript:
var cNs = document.getElementById('WinContainer').childNodes;
alert(cNs[1].tagName + ' : ' + cNs[1].childNodes[1].tagName);
cNs[1].childNodes[1].document.location = 'someurl.pl';
mais si je fais ceci:
frame1.document.location = 'someurl.pl';
il fonctionne très bien.
Votre code ne fait pas d'alerte "DIV: IFRAME". Voir http://jsbin.com/owofo/edit cNs [1] .childNodes [1] est null. –
IE et Firefox les indexent différemment – user105033
@unknown: pas avec le balisage dans la question. 'cNs [1] .childNodes [1]' est stocké dans tous les navigateurs, car vous ne disposez d'aucun espace entre les balises. –