Opera Mini中的跨域消息传递

时间:2016-07-29 10:23:41

标签: javascript iframe cross-domain postmessage opera-mini

我在主页和iframe之间实现了跨域消息传递。它适用于除Opera Mini之外的所有浏览器。

父页面包含以下代码:

if (window.addEventListener) {
    window.addEventListener("message", function(event) { alert(event.data);}, false);
} else if (window.attachEvent) {
    window.attachEvent("onmessage", function(event) { alert(event.data);});
}

iframe页面包含以下代码:

window.parent.postMessage('test', '*');

当iframe尝试访问window.parent以执行postMessage方法时,Opera Mini会抛出异常:'安全错误:尝试读取受保护的变量'。所有其他浏览器都不会抱怨。

请参阅此处的示例:http://mala.s3-eu-west-1.amazonaws.com/main.html

有解决方法吗?

1 个答案:

答案 0 :(得分:0)

我用Opera创建了一个错误报告,他们确认了这个问题。 FoNET

应该在几天内解决。