web-dev-qa-db-fra.com

javascript document.getElementById dans d'autres cadres

donc, j'ai 2 cadres et je veux accéder à l'élément d'un cadre à un autre:

cadre 1:

<div id='someId'>...</div>

cadre 2:

var div=document.getElementById('someId');

div.innerHTML='something'; 

cela ne fonctionne pas dans Firefox donc je veux être sûr, puis-je accéder à l'élément dans une autre image par son ID? 

16
ante.sabo

Vous pouvez faire référence à l’autre cadre en utilisant

window.frames["framename"]

et ensuite vous pouvez référencer l'élément dans le DOM en utilisant

window.frames["framename"].document.getElementById ( "yourelementid" );
22
rahul

Le problème est peut-être l’image actuelle dans laquelle vous vous trouvez. Si window.frames['framename'] ne fonctionne pas, essayez parent.frames['framename'] pour accéder aux images de niveau supérieur.

if(parent.frames && parent.frames['framename']) {
   var elem = parent.frames['framename'].document.getElementById(...); 
   // etc
}
12
Brian Duncan

J'avais un problème avec la version JS mais j'ai pu utiliser ces exemples pour une version de travail de jQuery:

var obj = $('#yourelementid', parent.frames["framename"].document);
1
Flea

Ou, si vous avez envie de tenter votre chance, vous pouvez simplement utiliser un paramètre numérique.

window.frames[0].document

0
goodhyun