我有一个页面,用JS和
创建一个简单的iframedocument.createElement('iframe');
我能做到吗
frames['x'].postMessage(...);
现在,由于Opera Mini非常特别,我一直在努力尝试将ifMessage转换为iframe。我尝试的一切都有相同的例外:
Uncaught exception: ReferenceError: Securiry error: attempted to read protected variable
是的,当我尝试做一些事情来摆弄框架对象时会发生异常。
有人遇到过这个问题吗?
提前致谢
答案 0 :(得分:2)
这是Opera Mini服务器端的一个错误导致跨域postMessage出现问题。修复它是在我们的积压,但不幸的是,当它发生时我不能给ETA。如果您正在创建的iframe使用您自己提供的内容,您可以考虑将其托管在与主文档相同的域上 - 这样postMessage应该按预期工作 - 就像在这个简单的测试用例中一样:https://dev.opera.com/articles/window-postmessage-messagechannel/crossdocmessaging.html。< / p>