我在JavaScript文件中有一个window.postMessage
。由于某些策略设置,这在IE9中似乎失败了。我无法弄清楚它是哪种政策。有没有人有任何想法?
答案 0 :(得分:4)
我相信你要找的关键是:
HKEY_CURRENT_USER \ Software \ Policies \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_CROSS_DOCUMENT_MESSAGING
如果设置了上面提到的注册表项,那么IE(我可以告诉的所有版本)将为window.postMessage函数返回undefined。
答案 1 :(得分:3)
让我在评论之外进一步阐述。正如你在这里看到的那样:
http://javascript.info/tutorial/cross-window-messaging-with-postmessage
如果我在家中使用普通IE9或在browserstack.com上使用普通IE9,则消息会在iframe中正常加载。但是,如果我使用Intranet IE9,我在JS控制台中收到以下错误:
SCRIPT16385: Not implemented
cross-window-messaging-with-postmessage, line 1 character 1
SCRIPT1002: Syntax error
all.js, line 1 character 1
似乎是某些安全设置阻止了postMessage调用。