我有一个父窗口和两个iframe。我试图访问一个iframe的元素 另一个iframe。使用代码:
function startplay(){
var txt="";
txt+= "some text";
var tag = window.frames("plays").getElementById("myvideo");
tag.innerHTML=txt;
}
上面的代码位于由锚标记激活的iframe脚本中。但是在调用脚本时没有任何反应。 myvideo标签内容不会改变。它是从另一个访问一个iframe的元素的正确方法。 我应该使用parent.document.getElementById(" play")。getElementById(" myvideo");得到一个参考。 of myvideo。
代码位于iframe(playright),myvideo标签位于iframe(播放)。
答案 0 :(得分:3)
如果您在其中一个iframe中,则需要使用“parent”转到其父级,然后从那里引用iframe对象。
所以这应该有效:
parent.nameofotheriframe.getElementById("myvideo");
(通过使用getElementById,您引用了< IFRAME>标记,而不是iframe对象。)
答案 1 :(得分:1)
我遇到了同样的问题并解决了这个问题:
我的主页代码:
<div id="left">
<iframe id="leftframe" name="leftframe" src="iframe-left.html"></iframe>
</div>
<div id="right">
<iframe id="rightframe" name="rightframe" src="iframe-right.html"></iframe>
</div>
左框架:
<div id="DivInLeftFrame">aaa</div>
右框架:
<input type="button" value="clickme" onclick="changeLeftFrame();">
功能是:
changeLeftFrame(){
parent.leftframe.document.getElementById('DivInLeftFrame').innerHTML = 'bbb';
}
添加“文档”以便工作。