关闭窗体事件-onbeforeunload事件

原创 2006年06月06日 12:34:00

注:三大主流浏览器中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+

<script language="javascript">
var g_blnCheckUnload = true;
function RunOnBeforeUnload() {
if (g_blnCheckUnload) {window.event.returnValue = 'You will lose any unsaved content';
}
}
function turnToOtherPage(){
g_blnCheckUnload = false;
//在此处添加你自己需要处理的方法,或页面跳转的连接
g_blnCheckUnload = true;
}
</script>
<body onbeforeunload="RunOnBeforeUnload()">
<input type="button" name="TrampEagle" value="TurnToPage" onclick="turnToOtherPage()">
</body>

 

<script language="javascript">
  g_blnCheckUnload = true;
  function RunOnBeforeUnload() {
     if (g_blnCheckUnload) {window.event.returnValue = 'You will lose any unsaved content';  
     } 
  }
</script>
<body  onbeforeunload="RunOnBeforeUnload()">
</body>
这样每次关闭浏览器窗口或涮新页面时,都要触发onbeforeunload这个事件,这样可以对用户进行提示,避免不必要的遗憾。

 

<script  language=javascript>  
function  window.onbeforeunload()  
{  
   if(event.clientX>document.body.clientWidth&&event.clientY<0  ¦  ¦event.altKey)  
   {  
       var  xmlhttp  =  new  ActiveXObject("Microsoft.XMLHTTP");  
       xmlhttp.open("GET","sessionEnd.asp",false);  
       xmlhttp.send();  
     }  
}  
</script>

关闭窗体事件-onbeforeunload事件

 注:三大主流浏览器中firefox和IE都支持onbeforeunload事件,opera尚未支持。用法:object.onbeforeunload = handler描述:事件触发的时候弹出一个有...
  • ofofw
  • ofofw
  • 2009年04月28日 18:00
  • 426

浏览器关闭时弹出提示事件onbeforeunload

有时候在做数据编辑的时候,为了友好提示用户不小心关闭浏览器时,提醒用户是否已经保存数据,可以用onbeforeunload来处理; 兼容谷歌,ie,火狐兼容性不好。 代码如下: var Unlo...
  • sinat_27790827
  • sinat_27790827
  • 2016年11月14日 14:53
  • 357

iframe监听unload事件

阻止默认事件 event.preventDefault(); 阻止事件冒泡 event.stopPropagation(); event.cancelBubble = true; //IE ...
  • zchunhe
  • zchunhe
  • 2014年03月26日 12:00
  • 1870

使用onbeforeunload事件检测窗口是否刷新或关闭

onunload,onbeforeunload 在页面刷新或关闭时调用,区别在于: onbeforeunload 是在页面刷新或关闭前触发,这时浏览器并未请求服务器读取新页面,因此onbeforeun...
  • fdipzone
  • fdipzone
  • 2013年10月26日 10:27
  • 22488

页面关闭和刷新onbeforeunload事件的正确用法

var g_blnCheckUnload = true; function runOnBeforeUnload() { if (g_blnCheckUnload) { t...
  • white_smile
  • white_smile
  • 2014年10月27日 19:19
  • 1929

onbeforeunload事件之fireFox、IE、chrome

最近做一个关闭浏览器时的退出操作,需要用到onbeforeunload事件,为了兼容当前的主流浏览器,于是对代码做了验证。 在验证ie和chrome时,onbeforeunload事件都顺利的被触发...
  • u013630932
  • u013630932
  • 2015年10月19日 22:28
  • 3229

onbeforeunload事件

长期以来, 做Web项目, 总会头疼这个问题.用户不进行注销或者退出功能, 直接关闭了浏览器.或者用户在进行输入操作时, 误点了一个链接, 跳转到其它页面, 造成输入数据的丢失.今天发现了onbefo...
  • changlich
  • changlich
  • 2006年08月09日 23:32
  • 8018

浏览器页面关闭事件获取及处理--onbeforeunload

浏览器在关闭页面操作时,提供onbeforeunload,onunload两个事件。浏览器onbeforeunload事件会在浏览器关闭前触发,它在用户离开页面之前弹出一个确认框,问用户是否要真正的离...
  • whereismatrix
  • whereismatrix
  • 2015年07月17日 11:00
  • 4190

使用javascript的onbeforeunload事件

onbeforeunload事件会在onunload事件之前触发,它在用户离开页面之前弹出一个确认框,问用户是否要真正的离开本页面。如果用户点击了“确认”按钮,页面将会跳转或刷新。如果点击了“取消”,...
  • weihualeiok
  • weihualeiok
  • 2011年08月08日 18:00
  • 4774

onbeforeunload阻止页面关闭

在即将离开当前页面(刷新或关闭)时触发。非常基础和有用的事件。window.onbeforeunload = function(event) { event.returnValue = "我在这写...
  • chengshaoying
  • chengshaoying
  • 2016年09月27日 09:31
  • 1094
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关闭窗体事件-onbeforeunload事件
举报原因:
原因补充:

(最多只允许输入30个字)