window.addEventListener("message"
时间: 2023-11-05 18:54:04 浏览: 169
window.addEventListener("message" 方法是一个用于在页面中接收跨域消息的事件监听器。通过使用该方法,页面可以接收来自其他窗口或iframe的消息,并进行相应的处理。该方法的作用是监听浏览器窗口之间传递的消息,当有消息传递给当前窗口时,会触发相应的回调函数。
在使用window.addEventListener("message" 方法时,需要注意以下几点:
- 该方法需要在接收消息的窗口或iframe中进行调用。
- 接收到的消息内容可以通过事件对象的data属性进行获取。
- 通过事件对象的origin属性可以判断消息的来源,可以用来进行安全验证。
- 使用window.parent.postMessage方法可以向父窗口发送消息。
- 使用window.postMessage方法可以向其他窗口或iframe发送消息。
示例代码:
```
// 接收消息
window.addEventListener("message", function(event) {
if (event.origin !== "http://example.com") return; // 可进行安全验证
console.log("接收到的消息内容:", event.data);
});
// 发送消息给其他窗口或iframe
var targetWindow = window.open("http://example.com/other");
targetWindow.postMessage("Hello from this window!", "http://example.com");
```
阅读全文