我如何确定 onbeforeunload 是由单击关闭按钮或页面刷新引起的,还是通常是由什么事件引起的?
这是一个片段:
window.onbeforeunload = function( e ){
if( !e ) e = window.event;
// insert code to determine which is the source of the event
}
请帮帮我。
最佳答案
引用各种文章并进行一些试验和错误,最终形成了这个想法,它非常适合我,就像我希望它发生的方式一样。它实现的逻辑也很简单。这个想法是检测关闭浏览器触发的卸载事件。在这种情况下,鼠标将在窗口外,指向 Close('X') 按钮。
$(window).on('mouseover', (function () {
window.onbeforeunload = null;
}));
$(window).on('mouseout', (function () {
window.onbeforeunload = ConfirmLeave;
}));
function ConfirmLeave() {
return "";
}
ConfirmLeave 函数会给出弹出的默认消息,如果需要自定义消息,返回要显示的文本而不是空字符串
看看这是否有帮助,:)
关于javascript - 如何识别onbeforeunload是点击关闭按钮引起的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54764412/