数据在IE9中发出addEventListener

时间:2015-05-12 12:20:24

标签: javascript internet-explorer addeventlistener postmessage

我要将一些数据从iframe传递给父级。

iframe代码

window.parent.postMessage({message: 'Test'}, "*");

父代码

  window.addEventListener('message', function (e) {
    alert('Received message 1 : ' + e.data.message);
    document.getElementById('ExchangeID').value=e.data.message;
  }, false);

这在Firefox,Chrome,Safari中运行良好。当我在IE9中运行时,出现e.data.message 未定义的错误。

这里缺少什么?

1 个答案:

答案 0 :(得分:1)

来自Can I Use... page on Cross-document Messaging

  

Image

     

IE8-9中的部分支持仅指在框架/ iframe(不是其他标签/窗口)中工作。此外,IE 9及以下的无法使用postMessage 发送对象。

但是,您可以使用替代语法:

window.parent.postMessage("test", "*")