在Javascript中如何查找窗口是打开还是关闭

时间:2015-06-18 19:19:16

标签: javascript

以下是我在HTML页面中使用的代码。我的要求是,..

1)用户点击“打开”按钮时,应打开包含内容的新窗口。现在,当用户导航到另一个页面并返回并单击相同的“打开”按钮时,不会打开新窗口,因为它已经打开。

2)但如果我关闭打开的窗口然后点击“打开”按钮,则应打开新窗口。

我可以通过以下代码实现第一个要求,但无法通过以下代码实现第二个要求。我总是得到window.closed为假。请帮忙。

<script>

var win1;

// The if condition is for achieveing 1st requirement which is perfect

if(window.sessionStorage.getItem('isOpenOnce') == null)
{
window.sessionStorage.setItem('isOpenOnce', 'opened');
win1 = window.open("http://www.example.com");

}

// the below else if is for achieveing 2nd requirement which is failing.

else if(win1.closed)
{
win1.location.reload();
}

else {  
}

</script>

2 个答案:

答案 0 :(得分:0)

查看此帖子以获取答案

这个问题已经被问到了。

Check if window is already open window.open

答案 1 :(得分:0)

使用window.open/window.closed :-

    Wincheck = window.open( URL, name, features )
    if (Wincheck.closed) alert ("It's closed!")
    else alert ("It's still open!")

    if (parseInt(navigator.appVersion>2)) {
     if (Wincheck.closed) alert ("It's closed!")
     else alert ("It's still open!")
    }