Javascript 如何在关闭选项卡事件上执行函数?

Javascript 如何在关闭选项卡事件上执行函数?,javascript,asp.net,forms,Javascript,Asp.net,Forms,我有如下功能,用于检测表单关闭,如下所示 .. 如果用户希望离开页面,我如何执行某些任务 window.onbeforeunload = function (e) { var y = e.pageY || e.clientY; //window.event.clientY; // if (y < 0) { return 'Window closed'; } else {

我有如下功能,用于检测表单关闭,如下所示 .. 如果用户希望离开页面,我如何执行某些任务

    window.onbeforeunload = function (e) {

        var y = e.pageY || e.clientY; //window.event.clientY; //

        if (y < 0) {
            return 'Window closed';
        }
        else {
            return 'Are You Sure Wants To Close Form?';
        }
    };
window.onbeforeunload=函数(e){
var y=e.pageY | | e.clientY;//window.event.clientY//
if(y<0){
返回“窗口关闭”;
}
否则{
返回“您确定要关闭表单吗?”;
}
};
它只显示带有文本“您确定要关闭表单吗?”…的弹出窗口。但是,如果用户单击“我想离开”页面,如何执行我的任务检查此项:

按照我们通常的方式是不可能的,只是需要一些技巧:

选中此项:

按照我们通常的方式是不可能的,只是需要一些技巧:


窗口。onbeforeunload
不是跨浏览器的,无法确保在用户离开您的页面之前运行您的代码


因此,不要依赖于
窗口。onbeforeunload

窗口。onbeforeunload
不是跨浏览器的,并且无法确保在用户离开页面之前代码将运行


所以,不要依赖于
窗口。在卸载之前

亲爱的流浪汉,我在其他代码中添加了警报…但当我按yeswait 2分钟时,控制不在那里…更新我的答案亲爱的流浪汉,我在其他代码中添加了警报…但当我按yeswait 2分钟时,控制不在那里…更新我的答案检查出来,你可以覆盖它检查这个你可以覆盖它
var timeout;
$(window).on('beforeunload', function (){
    timeout = setTimeout(function() {
        alert('execute any function instead of me!!!!');
    }, 1000);
    return "exitinggggggggggggggggggggg";
});