我创建了从一个域到另一个域的 PostMessage。
在域 AI 中有域 B 的框架。我可以从 A 向 B 发送消息。现在我想做相反的事情。我需要框架中的按钮(在弹出窗口上)。当我点击那里时,我需要从 B 向 A 发送消息。
在域 A 上:
<iframe id="frameId" src="http://b.net/2.html" onload="sendCommand();"> </iframe>
<script type="text/javascript">
function sendCommand() {
var receiver;
receiver = document.getElementById('frameId').contentWindow;
receiver.postMessage(receiver, 'http://b.net');
}
</script>
</body>
</html>
在域 B 中:
<!DOCTYPE HTML>
<html>
<head>
<script>
var F= function(){}
</script>
</head>
<body>
Hello THere
<button onclick="F()">Click me</button>
<script>
window.addEventListener('message', function(event) {
alert(event.origin);
}, false);
</script>
</body>
</html>