浏览器关闭时显示弹出窗口

时间:2011-03-04 06:16:22

标签: php javascript

浏览器关闭时

弹出

我正在使用onbeforeunload事件

<script>
function showPopup()
{

  urlstring = "http://www.mydomain.com/popup.php";
            window.open(urlstring,'mywin',"height=400px,width=500px,status=no,toolbar=no");

}



</script> 

<body onbeforeunload="showPopup(); ">

但是当我回击空间和页面刷新时它也会显示弹出窗口。

我希望仅在浏览器关闭时显示弹出窗口,而在返回空格时不显示。

但它显示了所有条件。

请为我建议任何其他解决方案。

4 个答案:

答案 0 :(得分:3)

每次显示一个弹出窗口,因为onbeforeunload事件不知道你要离开的域,它只知道当前页面正在卸载一个新的。

答案 1 :(得分:1)

嗯,这是一个痛苦的事实......

页面刷新和浏览器关闭时会触发

onbeforeunload

每次页面即将卸载时都会触发onbeforeunload事件。

其中包括

  1. 点击链接
  2. 提交表格
  3. 关闭浏览器(或标签页)
  4. 刷新页面
  5. 您可能会觉得这很有帮助 http://www.webdeveloper.com/forum/archive/index.php/t-36808.html

答案 2 :(得分:1)

    <script>
    function showPopup(){
        urlstring = "http://www.mydomain.com/popup.php";
        window.open(urlstring,'mywin',"height=400px,width=500px,status=no,toolbar=no");
    }

    window.onunload= showPopup();
    </script> 

注意:这是DOM级别0.不属于任何标准

已编辑:注意Infotekka指向document.onunload的链接也适用于此问题。

答案 3 :(得分:1)

你做不到。

您的网页(包括其活动)不了解其他标签,其他网页或浏览器本身。它也不知道为什么它被卸载。 onunload事件是您将获得的最接近事件,但每次卸载页面时都会触发,因此导航也是如此。