window.postMessage()
时间: 2024-03-22 13:36:22 浏览: 120
window.postMessage()是JavaScript中的一个方法,用于在不同的窗口或iframe之间进行跨域通信。它允许在一个窗口中发送消息,并在另一个窗口中接收和处理这些消息。
使用window.postMessage()方法,可以向其他窗口发送消息,并指定目标窗口的origin(源)和传递的数据。接收消息的窗口可以通过监听message事件来获取消息,并进行相应的处理。
以下是window.postMessage()方法的使用示例:
```
// 发送消息
window.postMessage(data, targetOrigin);
// 接收消息
window.addEventListener('message', function(event) {
// 处理接收到的消息
});
```
相关问题
window.postmessage
`window.postMessage` 是 JavaScript 中的一个方法,可以在不同窗口或标签页之间进行消息传递。它接受两个参数:要发送的数据和接收窗口的源(origin)。使用这个方法可以在页面之间进行安全的数据传输。
window.postMessage
window.postMessage是一种在不同窗口之间进行跨源通信的方法。它允许一个窗口向另一个窗口发送消息,以实现数据的传递和交互。使用postMessage时,需要指定目标窗口和消息内容,并可以选择指定目标窗口的地址。
具体用法如下所示:
otherWindow.postMessage(message, targetOrigin, [transfer]);
其中,otherWindow是目标窗口的window对象,message是要发送的消息内容,可以是字符串或对象,targetOrigin是接收消息窗口的地址,用于限制只有指定的窗口可以接收到消息,可选择为"*"表示无限制,transfer是可选参数,用于传输数据。
例如,在一个窗口中使用postMessage发送消息:
var win = window.opener ? window.opener : window.parent;
function sendMsg(){
var val = document.getElementById("msg").value;
if(win){
win.postMessage(val, "*");
}
}
在另一个窗口中,可以通过监听message事件来接收消息:
window.addEventListener("message", function(e){
document.getElementById("msg").value = e.data;
})
阅读全文