我在这里观看了几个主题,主要用于: window.onbeforeunload = function(e){ var e = e || window.event;
// IE&火狐 if(e){ e.returnValue ='你确定吗?'; }
//适用于Safari 回来'你确定吗?'; };
但似乎这会混合刷新页面和关闭页面的情况, 是否有可能区分这两种情况?
答案 0 :(得分:3)
function OnUnLoad()
{
if (window.event.clientY < 0 && window.event.clientX < 0)
{
//cleanup code goes here...
}
}
这似乎适用于所有浏览器。但关闭标签似乎会引发问题。实际上,没有“记录”的方式。
答案 1 :(得分:2)
实际上没有办法区分Javascript中的两个不同事件。您可以采用GMail方法并将AJAX用于所有内容,以便永远不会导致页面重新加载。这意味着唯一一次调用“OnBeforeUnload”就是当用户实际离开页面时。另一种方法是在所有链接上放置JS,以便在单击链接时禁用OnBeforeUnload脚本,但您只希望在浏览器实际关闭时触发。
就浏览器而言,用户单击链接以离开页面并单击浏览器关闭按钮之间没有任何区别。