window.attachEvent在IE8中似乎不起作用

问题描述 投票:2回答:1

首页:

...
<script>
if (window.addEventListener) {
 // addEventListener equivalent of code below
} else if (window.attachEvent) {
 window.attachEvent("message", function(e) {
  if (e.origin != "page2.html") { return; }
  alert(e.data);
 });
}
</script>

<iframe src="page2.html"></iframe>

page2.html:

<script>
var message = "hello!";
parent.postMessage(message, '*');
</script>

此代码在Chrome,Firefox和Opera中运行良好。 IE当然具有自己的处理方式,因此即使使用自己的.attachEvent,该代码也无法工作。

page2.html实际上是另一个域上的页面;我正在发送正确的P3P标头(没关系,但是有)。

我如何找出为什么postMessage似乎未到达父页面?

javascript internet-explorer-8 dom-events
1个回答
11
投票

[attachEvent"onmessage"的形式表示其事件名称,与addEventListener(使用"message"的相对)]

© www.soinside.com 2019 - 2024. All rights reserved.