今天写javascript的时候,碰到两个关于iframe的问题,首先说明我的是IE:
1.iframe与主页面之间不能直接使用appendChild();
2.iframe的event对象为空;
其实这两个问题是一个问题。
关于这两个问题我在google里面找了一下,都找到问题所在,需要明确指定谁谁的,譬如:
问题1:
var div=document.createElement('div');
window.frames['iframeName1'].contentWindow.document.body.appendChild(div);
以上加不到iframe中,应该是:
var doc=window.frames['iframeName1'].contentWindow.document;
var div=doc.createElement('div');
doc.body.appendChild(div);
问题2:
<iframe id="iframeName1" src="iframe.htm"></iframe>
<script language="javascript">
<!--
var iframe1=window.frames['iframeName1'];
var doc=iframe1.contentWindow.document;
doc.onmouseup=handler;
function handler()
{
alert(event);
}
//-->
</script>
以上不对,应该是:
<iframe id="iframeName1" src="iframe.htm"></iframe>
<script language="javascript">
<!--
var iframe1=window.frames['iframeName1'];
var doc=iframe1.contentWindow.document;
doc.onmouseup=handler;
function handler()
{
alert(iframe1.contentWindow.event);
}
//-->
</script>
本文探讨了在使用Internet Explorer浏览器时遇到的两个常见iframe JavaScript问题:无法直接使用appendChild()方法将元素添加到iframe内,以及iframe的event对象为空的情况。文章提供了具体的解决方案,包括正确引用iframe的document对象以及如何正确获取和使用事件对象。
4997

被折叠的 条评论
为什么被折叠?



