要更新网站,我需要定期跟踪数据库中的状态字段。为此,我设置了这样的计时器;
var id = window.setInterval("getState()", 1000);
getState()
每秒通过AJAX
调用数据库并返回特定状态字段的值。浏览器窗口打开时,计时器正在运行。当用户关闭其浏览器窗口时,我需要清除我使用此代码执行的计时器:
window.addEventListener('beforeunload', function(event) {
setState(0);
clearInterval(id);
});
现在我的问题是:这个event
是否始终被触发?这是现代浏览器中的可靠方式还是有例外?
编辑:
我在事件setState()
上添加beforeunload
以在窗口关闭时更新数据库。我以前忘了这个,对不起......
答案 0 :(得分:0)
beforeunload
事件。beforeunload
事件。beforeunload
事件 将被触发附注:如果浏览器窗口关闭,带有AJAX调用的计时器将自动停止。