Rainbow702 发表于 2013-2-7 16:54:24

IE关闭主窗口时,同时关闭所有的子窗口

我们在编写页面过程中,可能会通过 window.open 方法来打开多个子窗口。这样一来,在想关闭窗口的时候只能一个个的关闭所有打开的窗口,太烦了。那么有没有简单的办法,使得在关闭主窗口的时候,将所有附属的子窗口也一起关闭呢?嗯,既然写这篇BLOG了,答案肯定是有了哈。但不一定是很好的方法,只是实现了这个功能而已。其实,也没什么,只是在OPEN打开一个窗口时,使用一个数组记住了它的句柄。
上代码,如下,应该是一下就懂的,呵呵:
<html><head>    <title>IE关闭主窗口时,同时关闭所有的子窗口</title>    <SCRIPT language=javascript>    // 声明一个数组来记录所有打开的子窗口var allChild = new Array();// 打开三个子窗口,并记录下它们的句柄    var child = window.open("./window_open_test2.html","_blank");allChild.push(child);child = window.open("./window_open_test2.html","_blank");allChild.push(child);child = window.open("./window_open_test2.html","_blank");allChild.push(child);// 关闭自己,同时关闭所有子窗口      function closeAll() {var tmp;// undefined 不能加引号,即不可写成 "undefined"while((tmp = allChild.pop()) != undefined) {    tmp.close();}window.close();    }    </SCRIPT><head><body>      <input type="button" value="close"/></body></html> 
 
页: [1]
查看完整版本: IE关闭主窗口时,同时关闭所有的子窗口