在浏览器重新加载/刷新/关闭警报,然后ajax

时间:2015-09-10 06:15:42

标签: javascript php jquery ajax

是否可以在浏览器关闭时触发警报?如果用户确认“重新加载/关闭”,那么想要执行一些ajax的东西。这是我到目前为止尝试过的

window.onbeforeunload = function () {
    return 'This will close your chat session. Are you Sure!';
    var meta_id = $('#meta_id').val();
    $.ajax({
        url: site_url + '/chat/send_offline',
        type: 'post',
        cache: false,
        async: false,
        data: {
            meta_id: meta_id
        }
    });
}

据我所知,代码在return语句后没有执行。 如果用户确认??

,可以同时提醒和执行ajax代码

2 个答案:

答案 0 :(得分:0)

我在MDN documentation

中找到了这个
window.addEventListener("beforeunload", function (e) {
  var confirmationMessage = "Do you want to leave this page ?";

  // Call AJAX RIGHT HERE

  e.returnValue = confirmationMessage;     // Gecko and Trident
  return confirmationMessage;              // Gecko and WebKit
});

您必须在返回函数之前调用Ajax。因为return会中断函数的执行。

答案 1 :(得分:-1)

也许chrome.runtime.onSuspend或chrome.windows.onRemoved会帮到你吗?

相关问题