知道window.close()是否会显示安全警告

时间:2009-10-22 10:10:55

标签: javascript html internet-explorer

在IE7中,使用window.cln打开的子窗口可以使用window.close()关闭自身,但是使用< a href = ... target = _blank>打开一个窗口。如果子窗口试图自行关闭,将显示安全警告。

在我的应用程序中,我不知道我的子窗口是如何打开的,我需要知道(在子窗口javascript代码中)是否可以使用window.close()。有办法吗?问这个问题的另一种方法是 - 在IE中是否有办法区分通过window.open打开的窗口与通过target = _blank打开的窗口。

我试过检查window.opener但是在这两种情况下都有一个值,所以这不允许我区分这两种情况。

4 个答案:

答案 0 :(得分:1)

尝试比较window.opener和window.self

答案 1 :(得分:0)

只是一个盲目的镜头,但您可以尝试在窗口中删除onunload事件,以防它存在。

答案 2 :(得分:0)

如果您可以控制window.open事件,则可以为新窗口指定名称(我认为是第二个参数)。然后,您可以在应用window.close()之前检查该名称。

答案 3 :(得分:0)

来源:Close window without the prompt message in IE7

这是如何根据上面的页面避免提示:

function WinClose(){window.open('','_self','');window.close();}

<a href="#" onclick="WinClose();return false;">Close</a>

这是您网页的可行方法吗?