要通过ContentWindow传递消息,可以使用postMessage方法。该方法允许在不同窗口之间安全地传递消息。
以下是一个简单的示例,展示如何通过ContentWindow传递消息:
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属性验证消息来源,以防止恶意代码的传递。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: ContentWindow和parent的区别