我会尽力保持这个简单。以下代码在 IE10 中运行良好:
if (!document.getElementById(frames[i][j].toString()).contentWindow.MyFunc()) {
alert("Failed");
return false;
}
但是,在 IE8 中,它会失败,因为 MyFunc() 上的“对象不支持此属性或方法”它确实找到了 contentWindow。
一些可能有用的信息:
'frames' 是 iframe 对象的 2D 数组。
此代码存在于父级中。
MyFunc() 在子 iframe 中定义。
从本质上讲,我的问题归结为:
document.getElementById(frames[i][j].toString()).contentWindow.*whatgoeshere?*
我确实看到了这篇文章,但它并没有证明有多大帮助。
这不是 iframe 不为人知的情况(例如:this post),因为代码在文档准备好后很长时间才会触发。
虽然错误不同(拒绝访问),但我想知道我是否需要做一些更复杂的事情,就像我在这篇文章中发现的那样。