HTML5 PostMessage跨域问题

时间:2011-11-08 14:36:44

标签: html5 cross-domain postmessage

我正在尝试使用HTML5方法'postMessage'。我知道这种方法只适用于'现代'浏览器,但对于我的客户群来说,这已经足够了。

这是我的情况: 域'abc.com'上的浏览器窗口在域'xyz.com'上打开一个新窗口。我拥有这两个域,我可以在任何一方放置我需要的任何JavaScript。据我所知,我应该可以使用'postMessage'在两个窗口之间发送消息。这适用于Chrome,但不适用于IE 9.我无法从子窗口获取父窗口的引用,反之亦然。如果两个窗口都在同一个域上,我就没有问题。

那么,这是IE实施'postMessage'的错误(“功能”)吗?有什么方法可以完成我想做的事情吗?

非常感谢!

1 个答案:

答案 0 :(得分:3)

不幸的是,IE's postMessage implementation only works between windows and iframes and frames。使用window.open进行尝试会在调用No such interface时导致postMessage错误,即使调试器清楚地显示了存在的方法。