关闭浏览器窗口时,将立即释放该软件获取的所有资源。因此,当我关闭窗口时,逻辑上应该没有任何进程在运行。因此,绑定到beforeunload
的函数是如何执行的。而且,如果有对服务器的AJAX调用,如何保证服务器数据库将写入我正在通过此函数传递的内容。
window.addEventListener("beforeunload", function (e) {
// AJAX CALLto the server
(e || window.event).returnValue = null;
return null;
});
该AJAX调用如何执行。我的浏览器在一秒钟之内就关闭了。如果要写入数据库该怎么办?如果可以,此AJAX调用将成功执行,然后在内部实现。
编辑: 有评论的人指出,不能保证该AJAX调用。因此,这意味着有机会。如果有机会,那么该过程如何执行。还有,如果我们关闭标签会发生什么。还是100%保证。如果是,那为什么以及如何?