如果在Web应用程序中关闭主窗口,关闭子窗口是否合理?

时间:2009-06-18 15:43:21

标签: popup web-applications

在Web应用程序中,有时您在应用程序中有弹出窗口。

当用户关闭主窗口时,关闭所有子弹出窗口是否合理?

请记住,主窗口不会停留在同一页面上,用户可能会导航到同一应用程序中的其他页面(即使您保留对所有打开的子窗口的引用,新页面请求将会松散打开窗户等)。

5 个答案:

答案 0 :(得分:5)

是的,我认为这是合理的要求。

当您调用window.open时,您可以将句柄存储到从此函数返回的窗口,然后迭代该集合,并在父窗口关闭时调用它们{。\ n}。

答案 1 :(得分:2)

如何在弹出窗口中添加一些javascript,每隔x秒检查一次父页面的存在,以及是否用“会话超时”消息刷新内容。我认为你应该可以使用弹出窗口中的“window.opener.closed”属性来检查父级是否已关闭...只是一个想法。

答案 2 :(得分:0)

您可以在隐藏的iframe中保留对已打开的子弹出窗口的引用,并在iframe检测到浏览器关闭时关闭它们。

答案 3 :(得分:0)

可能存在安全原因 - 这些子窗口可能会保留当用户退出主窗口时应该销毁的会话信息。您不希望让用户面临让其他人出现并稍后使用他们的打开浏览器以及访问其会话的危险。

但是从UI的角度来看,我同意它非常糟糕。我认为这是一个适用于Intranet解决方案的案例,但对于互联网来说却是个坏主意。

答案 4 :(得分:0)

这有什么帮助吗?您总是可以尝试传递包含页面之间所有子节点的数组。

http://www.codeproject.com/KB/scripting/WebChildren.aspx