如何在使用javascript卸载父窗口时关闭浏览器中的所有子窗口

时间:2014-10-05 08:52:36

标签: javascript cross-browser window.opener

我需要在使用javascript卸载页面时找到并关闭所有子窗口(其页面是他们的window.opener)。当父窗口即将被卸载时,我需要遍历所有打开的窗口并仅关闭那些卸载的页面是他们的window.opener。这样做的正确方法是什么?我需要一个跨浏览器的解决方案。

2 个答案:

答案 0 :(得分:0)

为每个需要打开的新窗口创建一个变量,然后按照以下方式关闭它们:

var.close();

完整示例:

var window1; 
window1 = window.open("www.google.com");
window1.close(); 

答案 1 :(得分:0)

尝试使用onunload事件,该事件负责关闭所有弹出窗口。

<body onunload="destroyPopUps()">

在上面的代码中,onunload事件与页面的body元素相关联。这是destroyPopUps函数的实现。

function destroyPopUps() 
{
    if(popups.length == 0) return; 
    for(i=0; i<popups.length; i++) 
    {
        popups[i].close(); 
    }
}