阅读量:1
要通过ContentWindow传递消息,可以使用postMessage方法。该方法允许在不同窗口之间安全地传递消息。
以下是一个简单的示例,展示如何通过ContentWindow传递消息:
- 在发送消息的窗口(发送方)中,使用postMessage方法发送消息:
var receiverWindow = document.getElementById('receiver').contentWindow; receiverWindow.postMessage('Hello, this is a message from sender window', '*');
- 在接收消息的窗口(接收方)中,添加一个事件监听器来接收消息:
window.addEventListener('message', function(event) { if (event.origin !== 'https://www.example.com') { return; } console.log('Message received: ' + event.data); });
在上面的示例中,发送方向ID为’receiver’的iframe窗口发送了一条消息,接收方通过监听message事件来接收消息,并在控制台中打印出来。
需要注意的是,要确保在接收方中通过消息事件中的origin属性验证消息来源,以防止恶意代码的传递。