2

我有一个页面通过 JS 创建一个简单的 iframe

document.createElement('iframe');

我可以他们做

frames['x'].postMessage(...);

现在,由于 Opera Mini 很特别,我一直在尝试将 postMessage 发送到 iframe。我尝试的一切都有同样的例外:

Uncaught exception: ReferenceError: Securiry error: attempted to read protected variable

是的,当我尝试做一些事情来摆弄框架对象时会发生异常。

有人遇到过这个问题吗?

提前致谢

4

1 回答 1

2

这是 Opera Mini 服务器端的一个错误,它会导致跨域 postMessage 出现问题。修复它在我们的积压工作中,但不幸的是,我无法给出预计何时发生。如果您正在创建的 iframe 使用您自己提供的内容,您可以考虑将其托管在与主文档相同的域上 - 这样 postMessage 应该按预期工作 - 就像在这个简单的测试用例中一样:https://dev.opera .com/articles/window-postmessage-messagechannel/crossdocmessaging.html

于 2016-04-13T08:37:31.207 回答