日期:2014-05-16  浏览次数:20394 次

IE关闭按钮事件
我想在用户点击IE的右上角的关闭按钮时做一些事情
我可以扑获这个事件用下面的方法可以实现
color=#FF0000]
<script language="javascript">
 [ function window.onbeforeunload(){  
  with(event)
  if(clientX>document.body.clientWidth && clientY<0 || altKey)  
  window.open('a.asp') 
  }
</script>[/color]
<body onLoad="onbeforeunload()">
可是当这个网页做一些操作时比如分页了查询了自己提交自己处理时在点击IE的关闭按钮就不管用了
请问是为什么怎么解决谢谢,对了我用的是框架的形式不知跟这有关吗

------解决方案--------------------
我是这么做的,希望对你有帮助。

frame

<script language="javascript">
<!--
var exitflag=true;

function onexit(){
if(exitflag){
var ajax=InitAjaxadmin();
ajax.open("post","frame.php?act=logout",true);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.send();
alert('您已经退出后台管理!'); //让事情做完再关闭窗口,一个弹出应该足够,否则ajax非法操作
}
else{
exitflag=true;
return;
}
}
window.onbeforeunload=onexit;
-->
</script>




mainFrame 里所有的文件添加一个包含文件,包含此内容


function scriptAfterHeader(){
?>
<script language="javascript">
function keydown(){
if(event.keyCode==116){ //过滤F5
top.exitflag=false;
event.keyCode=0;
event.returnValue=false;
top.main.location.reload(); //只刷新mainFrame
}
}
document.onkeydown=keydown;
</script>
<?php }


------解决方案--------------------
我是这么做的,不知道对你有没有帮助
<script language="javascript" > 
 [ function onbeforeunload(){
if(event.clientX <0)
window.open( 'a.asp ')

</script >
<body onunload="onbeforeunload();" >