【发布时间】:2015-01-19 20:27:49
【问题描述】:
此问题已因离题而关闭,因此我已标记缺少信息。
具体问题或错误加上所需的最短代码:
如果在某些网站的 iframe 中,下面的代码在 IE11 中不起作用。 (“Certain”并不具体,但我没有公开演示。我无法制作一个,直到我在我的私人代码中找到原因。不过,这个问题足够具体,可以由专家来回答,那就是为什么我问 SO 而不是一个没有任何想法的漫长的调试过程。)
['a', 'b'].forEach(function(elem){console.log(elem);});
error 表示该数组不支持 forEach 方法。
期望的行为:
forEach() 方法对每个数组执行一次提供的函数 元素。 - MDN
【问题讨论】:
-
您将不得不发布所涉及的代码,以便任何人都能提供帮助。
-
我只能猜测,因为您没有提供复制品。我的猜测是框架发出了这个命令。
delete [].constructor.prototype.forEach。这将从所有数组中删除forEach方法。 -
您检查document mode 是否至少为9? IE8及更早版本不支持
forEach阅读this。 -
@Pointy,代码已添加。
-
是的,iframe 受父级设置的影响(即使我在元标记中明确设置边缘模式)。 “如果顶级页面不在边缘模式下,IE11 使用 Quirks 模式仿真。” - msdn.microsoft.com/en-us/library/ff955402(v=vs.85).aspx
标签: javascript html iframe foreach internet-explorer-11