【问题标题】:How to send and receive message in cross tabs in browser?如何在浏览器的交叉表中发送和接收消息?
【发布时间】:2015-11-20 20:14:38
【问题描述】:

我想打开一个新窗口并向该窗口发送消息,然后在另一个选项卡中接收。我正在这样做,但它不起作用。

if (id > 0) {
            var w = window.open(testurl,"address");
            w.postMessage("ddd", "address");
}

新窗口已打开,但未显示数据。 这是另一个窗口内容。

<script>
    window.addEventListener("message", receiveMessage, false);

    function receiveMessage(event) {
        alert(event.data);


    }
</script>

数据不警觉。有什么问题?

【问题讨论】:

  • 您正试图在您将其发布到的文档加载之前发布该消息。如果您希望文档能够立即访问数据,请使用查询字符串。
  • 是的,我也认为这是个问题。

标签: javascript browser cross-browser postmessage


【解决方案1】:

targetOrigin 与您正在打开的窗口的名称不同。 Origin 是您在打开的窗口中提醒document.origin 时获得的值。

这是您应该作为第二个值传递给postMessage 的值;不是窗口的名称。

【讨论】:

    猜你喜欢
    • 2016-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-03
    • 2021-07-11
    • 2015-04-07
    • 2011-04-23
    • 1970-01-01
    相关资源
    最近更新 更多