javascript-parent.document.getElementById(“…”)为null或不是IE7中的对象
作者:互联网
我已经进行了一些研究,但是作为JavaScript新手,我似乎无法针对我的具体情况进行任何操作:
我在页面中有一个iframe,在该iframe的文档中,我有以下代码:
function fun(){
var slideTitle = api.getField('title');
parent.document.getElementById("slidecaptionOoH").innerHTML = slideTitle;
在父文档中,我有:
< h4 id =“ slidecaptionOoH”< / h4>
我尝试在标签之间添加注释,但仍然会在IE7中收到错误.该页面显示正常,但显然我不希望人们看到该错误.
好吧,我想我已经将问题缩小了一点.我认为这可能与父项完成加载之前执行的iframe文档的功能有关.我在父级中使用treesaver.js框架,该框架涉及大量的DOM操作.当我关闭treesaver时,我不再收到错误.
所以我想我现在的问题是,如何在父项加载完成之前延迟该功能?还是完全延迟了iframe文档的加载?
解决方法:
您可以继续合并父项,直到它为各自的子项加载以下内容:
function fun(){
var slideTitle = api.getField('title');
var el = parent.document.getElementById("slidecaptionOoH");
if (el){
el.innerHTML = slideTitle;
} else{
setTimeout(fun, 50);
}
el = null;
}
但这只是一个解决方法.
标签:null,iframe,parent-child,internet-explorer-7,javascript 来源: https://codeday.me/bug/20191202/2086600.html