如何在Firefox中检测浏览器关闭事件?

时间:2011-07-20 05:44:10

标签: javascript jquery firefox browser dom-events

如何在Firefox浏览器中检测浏览器关闭事件?我想在服务器端做一些清理过程,并保持上次注销时间。 要实现此功能,需要在用户单击注销或浏览器关闭时触发ajax调用。 对于IE,以下代码正在运行:

if (window.event.clientY < 0 && (window.event.clientX > (document.documentElement.clientWidth - 5) || window.event.clientX < 0)) {

        logoutUser();//logging out the user

        } 
}


function logoutUser(){

var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera,
    //Safari
    xmlhttp = new XMLHttpRequest();
    } else {// code for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
xmlhttp.open("GET", "Logout.action", true);
xmlhttp.send();

}

如何在Firefox中执行此操作?请帮帮我。

3 个答案:

答案 0 :(得分:6)

使用onbeforeunload

window.onbeforeunload = function (e) {

  e = e || window.event;

  // For IE and Firefox prior to version 4
  if (e) {
    e.returnValue = 'Any string';
  }

  // For Safari
  return 'Any string';
};

答案 1 :(得分:0)

window.addEventListener('unload',fn,false);

答案 2 :(得分:0)

var closedWindow = function() {
    //code goes here
};

if (window.addEventListener) {
    window.addEventListener('unload', closedWindow, false);
} else if (window.attachEvent) {
    // pre IE9 browser
    window.attachEvent('onunload', closedWindow);
}