我正努力将数据从父域传递到另一个域的iframe。
我阅读了我可以使用postMessage避免相同策略起源的信息,但我仍然收到以下消息:
Failed to execute 'postMessage'... The target origin provided does not match the recipient window's origin
我试图将数据从父域传递到iframe,再从iframe传递给父域。
要发送消息的代码:
window.onload = function() {
var receiver = document.getElementById('Iframe').contentWindow,
function sendMessage(e) {
receiver.postMessage('Hi from Parent Domain!', 'Iframe-Domain.com');
}
receiver.addEventListener('pageshow', sendMessage);
}
我希望在加载特定的iframe页面时发送邮件。
接收消息的代码:
<div id="message">
</div>
window.onload = function() {
var message = document.getElementById('message');
function receiveMessage(e) {
if (e.origin !== "Parent-Domain.com")
return;
message.innerHTML = "Message Sent: " + e.data;
}
window.addEventListener('message', receiveMessage);
}
注意:
谢谢