我有一个窗口,它是父窗口。然后在这个窗口内有一个iframe。 在父窗口中,我正在进行ajax调用。从通话中收到数据后,我需要将数据发布到子iframe。
在子iframe中,我已按以下方式注册了呼叫 -
function Mymessage() {
console.log("Received message from parent window");
}
window.addEventListener("message", Mymessage, false);
在父母中,在ajax调用成功后,我将数据发送到子iframe,如下所示 -
window.postMessage(mydata, '*');
问题 - 我一直在调试,阅读它。但不行。根本不会调用“Mymessage”函数。为什么呢?
当我在window.postmessage上放置调试点时,它就会命中它。但当我尝试进入它内部时,它只是进入下一行。这是对的吗?
答案 0 :(得分:1)
请试试以下:
window.onload = function() {
(window.addEventListener && window.addEventListener('message', Mymessage, false) // FF,SA,CH,OP,IE9+
|| window.attachEvent && window.attachEvent('onmessage', Mymessage)); // IE8
}