“postMessage”是一种
HTML5 API,它可以在包括IE8 / 9在内的所有主流浏览器中使用.我想要做的是从页面创建一个弹出窗口,并可以使用“postMessage”与弹出窗口通话.除IE8 / 9以外,每个浏览器都有效.失望!
看起来IE8 / 9仅允许iframe之间的通信,但不允许在两个窗口之间进行通信,即使窗口都在同一层次结构中.
解决方法
.postMessage方法的工作原理,您只需要了解它如何从IE8及以上工作.不幸的是,对于IE8和IE9,它不会做你想要的(尽管它在IE10中).当您可以在IE8 / 9中的帧之间发送消息时,不能将消息发送到单独的窗口.
有一些解决方案在某些情况下起作用. Martin Beeby在他的博客文章的最后一段中讨论了这个问题:PostMessage Popups and IE.
有关更多信息,还有其他一些注意事项,请参阅Eric Lawrence的post on MSDN.