首页 > 解决方案 > 哪些情况下 window.opener.closed 属性是必要的

问题描述

试图弄清楚,使用window.opener.closed标志的情况是什么?看起来如果打开器窗口关闭,window.opener变量设置为,所以我们无论如何null都无法访问该属性。.closed是否存在开启器窗口实际关闭但window.opener仍然可用以便我们检查.closed属性的情况?

标签: javascriptdom

解决方案


所以首先,closed属性的行为很大程度上依赖于浏览器。在所有现代浏览器(Firefox、Chrome、Edge)中,逻辑都如您所描述的那样 - 在打开器窗口被关闭时window.opener无效并且该closed属性不再可访问。但是,对于 IE,情况并非如此,您可以很好地访问该属性。

其次,您所描述的行为只有在您通过鼠标事件关闭窗口时才会发生(例如,将鼠标悬停在浏览器选项卡的“X”图标上并单击它)。如果您以编程方式关闭打开器窗口(因此通过使用该close()函数),您将看到无效过程不会发生。


推荐阅读