如何将事件从父窗口发送到其子窗口?

时间:2018-03-27 15:10:31

标签: javascript html5 javascript-events postmessage

我想从父窗口向其子窗口发送一些事件/数据。我怎么能这样做? 我尝试了 postMessage ,但它没有用。

2 个答案:

答案 0 :(得分:1)

现在已经有效了,早些时候我做了一些语法错误。这是相同的正确代码。

//parent Window
childWindow=window.open("http:/localhost/abcd.php","_blank","width=500,height=500");
childWindow.postMessage('message',"http://localhost:80/child.php");


//child Window
var newUrl='';
window.addEventListener(
 "message",
 function(e) { 

console.log(e.data);//your data is captured in e.data 
}, false);

答案 1 :(得分:0)

如果您引用的子窗口是iFrame,则postMessage是您坚持使用的方法。

如果没有看到您尝试过的任何代码,很难说明您对postMessage的特定使用情况有何用处 - 但是,这里有一个指向working postMessage example from an MDN article,以及article with a fully functional example,您可以从中解析代码。

其中一个应该能够告诉您为什么您的实施不起作用。