在浏览器关闭时获取确认框

时间:2011-01-12 09:41:28

标签: javascript javascript-events mozilla

我已经尝试过以下代码用于上述目的,但这不适用于mozila,而且我在确认框中还有一些额外的行。

<html>
<head>    
<meta http-equiv="Content-type" content="text/html; charset=utf-8">    <title>Coordinates!</title>
<script type="text/javascript">
 var myclose = false;
 function ConfirmClose()         
 {                 
  if (event.clientY < 0)
   {                         
   event.returnValue = 'Any message you want';
   setTimeout('myclose=false',100);
   myclose=true;                 
}         
}          
function HandleOnClose()         
{                 
if (myclose==true) 
alert("Window is closed");         
} 
</script>


  </head>  <body onbeforeunload="ConfirmClose()" onunload="HandleOnClose()" ><a href="#">test</a> </body></html>

你能为mozila提出一些建议。

2 个答案:

答案 0 :(得分:1)

如果您尝试在用户尝试离开页面时尝试显示弹出窗口,则可以使用,甚至还有跨浏览器解决方案。但是,如果,你想要做的是从javascript调用以查看firefox是否正在退出,我不认为这可能来自javascript ...然后我可能会错。

function goodbye(e) {
    if(!e) e = window.event;
    //e.cancelBubble is supported by IE - this will kill the bubbling process.
    e.cancelBubble = true;
    e.returnValue = 'You sure you want to leave?';

    //e.stopPropagation works in Firefox.
    if (e.stopPropagation) {
        e.stopPropagation();
        e.preventDefault();
    }
}
window.onbeforeunload=goodbye;

source

答案 1 :(得分:1)

您可以使用jQuery实现相同的目标。

检查this示例。在文本框关闭窗口中键入内容。