我正在使用Ajax编写一个简单的聊天脚本,并希望指出用户何时离开页面。已经阅读了几篇文档并发现它有效:
window.onbeforeunload = leaveChat;
function leaveChat(){
... my code
return 'Dont go...';
}
不幸的是(并且逻辑上),如果他们取消退出,我的代码仍然执行并且即使他们仍在页面上,他们也会被标记为离开?它只应在确认离开页面时执行。有什么建议吗?
我会使用onunload
,但它似乎不适用于我的任何浏览器(Chrome,IE)。
答案 0 :(得分:1)
首先,您应该使用以下命令添加事件处理程序:
window.addEventListener('beforeunload', function() {
// Confirmation code here
});
window.addEventListener('unload', function() {
// fire pixel tag to exit chat on server here
// UI interactions are not possible in this event
});