【问题标题】:Window to Window Communication in js by window namejs中的窗口到窗口通信按窗口名称
【发布时间】:2023-04-06 15:37:02
【问题描述】:

有没有人可以给我一些关于如何使用javascript处理窗口到窗口通信的想法,因为这两个窗口没有父子关系。基本上另一个窗口是使用 window.open 方法打开的。非常感谢任何精彩的信息。

【问题讨论】:

    标签: javascript window communication window.open


    【解决方案1】:

    假设如下:

    windowHandle=window.open('path/to/document');
    

    您可以在两个窗口之间进行交互。

    您从使用变量名打开它的文档中获得了一个指向窗口对象的指针:

    //doSomething has to be known inside the new window
    windowHandle.doSomething();
    

    并从新窗口内的文档到打开新窗口的窗口,使用opener-property:

    //doSomething has to be known inside the window that opened the new window
    opener.doSomething();
    

    【讨论】:

    • 很好,但不能调用任何方法,因为它会给出错误 DOMException: Blocked a frame with origin from accessing a cross-origin frame. 并且设置 Access-Control-Allow-Origin 将无济于事。 windows之间如何进行一些通信?
    • 答案是opener.postMessage(),在*.com/questions/24603580/…找到