好的,这是场景。
我有一个打开一个新窗口的页面。然后它在这个新窗口中设置各种属性,例如父 url 和父窗口名称。
子窗口创建一个 javascript 计时器并每隔 x 秒回调父窗口。
父窗口关闭。
当子计时器过去时,我看到 window.opener 现在为空。
如何检查具有父 url 和父窗口名称的另一个窗口是否打开?然后,如果我找到匹配项,如何在不重新加载子窗口的情况下将此匹配窗口设置为孩子的父级?
好的,这是场景。
我有一个打开一个新窗口的页面。然后它在这个新窗口中设置各种属性,例如父 url 和父窗口名称。
子窗口创建一个 javascript 计时器并每隔 x 秒回调父窗口。
父窗口关闭。
当子计时器过去时,我看到 window.opener 现在为空。
如何检查具有父 url 和父窗口名称的另一个窗口是否打开?然后,如果我找到匹配项,如何在不重新加载子窗口的情况下将此匹配窗口设置为孩子的父级?
我没有在所有主流浏览器中测试过这个。
// open the child window for first time
window.open('test.html','WindowName');
// re-assigns the reference for the same child window to a variable
WindowRef = window.open('','WindowName');
请注意,url 参数留空,弹出窗口名称相同。它引用同一个子窗口并将引用对象分配给变量“WindowRef”。
上述代码最好的部分是,无论父页面是否刷新,您都可以获取窗口的引用。