函数window.open关闭所有子窗口

函数window.open关闭所有子窗口
本文介绍了如何用window.open方法打开一个子窗口,当我们要关闭主窗口的所有子窗口也关闭了。下面是我的实现思路和代码,分享给大家。

实现这个想法:

1。第二个参数winname,打开的窗口函数window.open(url,winname),能唯一识别打开的窗户。所以唯一使用的winname.close()的功能是关闭子窗口。

2。一个页面可能有多个子窗口。因此,需要一个数组来存储所有子窗口对象。当你关闭时,你可以遍历数组。

3。子窗口也可以再次打开子窗口,循环不停,所以需要进行判断。

这一要求可以通过两种方式实现。

调用子窗口的关闭功能。

这个方法很容易理解,但是实际的实现过程发现浏览器关闭事件不是。如果你需要一个按钮点击关闭或者快捷键关闭,有一点麻烦,递归关闭子窗口。

这种方法很容易实现,缺点是窗口存储窗口中的所有对象数组都需要相同的名称。

以下是子窗口的方法,使用递归关闭子窗口和子窗口
功能closesonwindow(赢得){
对于(VAR指标= 0;指数小于win.length;指数+ +){
如果窗口已关闭
如果(赢{ }关闭){
继续;
}
如果窗口不可以打开窗口
如果(typeof(赢{指数}。openedwindow)= undefined){
{ }关闭();
继续;
}
如果(赢{指数}。openedwindow。长度= = 0){
{ }关闭();
其他{ }
closesonwindow(赢{指数}。openedwindow);
{ }关闭();
}
}
}
以上是对这篇文章的完整描述,希望能对您有所帮助。

tag:子窗口函数电脑软件openwindow

相关内容