本文实例总结了JS针对浏览器窗口关闭事件的监听方法。

1、onbeforeunload事件:
说明:目前三大主流浏览器中firefox和IE都支持onbeforeunload事件,opera尚未支持。
用法:
·object.onbeforeunload = handler
·<element onbeforeunload = “handler” … ></element>
描述:
事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页。handler可以设一个返回值作为该对话框的显示文本。

触发于:
·关闭浏览器窗口
·通过地址栏或收藏夹前往其他页面的时候
·点击返回,前进,刷新,主页其中一个的时候
·点击 一个前往其他页面的url连接的时候
·调用以下任意一个事件的时候:click,document write,document open,document close,window close ,window navigate ,window NavigateAndFind,location replace,location reload,form submit.
·当用window open打开一个页面,并把本页的window的名字传给要打开的页面的时候。
·重新赋予location.href的值的时候。
·通过input type=”submit”按钮提交一个具有指定action的表单的时候。
可以用在以下元素:
·BODY, FRAMESET, window
平台支持:
IE4+/Win, Mozilla 1.7a+, Netscape 7.2+, Firefox0.9+
示例:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />    <title>onbeforeunload测试</title>    <script>    function checkLeave(){     event.returnValue="确定离开当前页面吗?";    </script>    </head>    <body οnbefοreunlοad="checkLeave()">    </body>    </html>      也可以这样写:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  <TITLE> top.html </TITLE>
 </HEAD>
 <script language="JavaScript">
window.onbeforeunload = function()
//  这是用来设定一个时间, 时间到了, 就会执行一个指定的 method。
    setTimeout(onunloadcancel, 10);
    return "真的离开?";
window.onunloadcancel = function()
    alert("取消离开");
</script>
   <p> 点击关闭按钮  监听</p>
</BODY>
</HTML>
一个判断页面是否真的关闭和刷新的好方法:
window.οnbefοreunlοad=function (){ 
alert("===οnbefοreunlοad==="); 
if(event.clientX>document.body.clientWidth && event.clientY < 0 || event.altKey){ 
alert("你关闭了浏览器"); 
}else{ 
alert("你正在刷新页面"); 
window.onbeforeunload = function(e) {
	var e = window.event ||e;
	e.returnValue=("是否确定关闭页面");
加入js文件后,查看网页效果:
点击网页对应窗口关闭按钮,会弹窗如下弹窗:
				
// $(window).bind('beforeunload',function(){return '您输入的内容尚未保存,确定离开此页面吗?';}); // window.onbeforeunload = function() { return "确定离开此页面吗?"; }; // function myFunction() {return "自定义内容";} // w
window.onbeforeunload = function(e) { var e = window.event ||e; e.returnValue="确认关闭页面吗?"; 不过returnValue给的字符是没有用的,浏览器始终都只会返回固定的提示,如下:
JavaScript中,可以使用`window.onbeforeunload`事件监听浏览器窗口关闭事件。当用户尝试关闭窗口时,该事件会触发。 以下是一个示例代码: ```javascript window.onbeforeunload = function() { return "确定要离开吗?"; // 返回提示信息 以上代码将在用户尝试关闭窗口时弹出一个提示框,询问用户是否确定离开。 需要注意的是,由于浏览器的安全限制,无法通过代码强制阻止用户关闭窗口。因此,使用该事件时应尽量避免过于依赖它来进行数据保存等操作。