当用户在浏览器中输入地址并点击返回或用户关闭浏览器时,我尝试了一段时间执行JavaScript函数。我尝试了卸载事件,但无法获得警报。这就是我正在做的事情:
$(window).unload(function () { alert("Are you sure?"); });
也可以
$(body).unload(function () { alert("Are you sure?"); });
我快没办法了!
ql3eal8s1#
您可以侦听在卸载页面时,在unload事件之前触发的beforeunload事件。
beforeunload
$(window).on('beforeunload', function(){ // ... })
hfsqlsce2#
有些浏览器(如Chrome)会在卸载事件处理程序中屏蔽警告,以防止出现这类恼人的消息。尝试使用console.log或在其中设置断点,以确定在没有警告的情况下是否会触发处理程序。所以问题在一个类似的行:window.onunload is not working properly in Chrome browser. Can any one help me?您只能通过在beforeunload处理程序(HT @undefined)中返回一个字符串来传递警报,但我甚至会避免这样做,因为弹出窗口通常是不好的,而且大多数人在真正考虑框中的内容之前,都会做最小的处理来找到make-this-thing-go-away选项。
iugsix8n3#
您在window.onbeforeunload中定义的函数,如果它返回一个字符串,它将弹出一个带有该消息的确认导航提示。
可以忽略警报!
window.onbeforeunload = function() { return "All unsaved data will be lost. Are you sure?"; };
有些浏览器会以不同的方式处理onbeforeunload。例如,最近的Firefox会忽略您的返回字符串,只显示标准消息。
oipij1gg4#
$(window).bind('beforeunload', function(){ alert("Are your sure?") });
4条答案
按热度按时间ql3eal8s1#
您可以侦听在卸载页面时,在unload事件之前触发的
beforeunload
事件。hfsqlsce2#
有些浏览器(如Chrome)会在卸载事件处理程序中屏蔽警告,以防止出现这类恼人的消息。尝试使用console.log或在其中设置断点,以确定在没有警告的情况下是否会触发处理程序。
所以问题在一个类似的行:
window.onunload is not working properly in Chrome browser. Can any one help me?
您只能通过在beforeunload处理程序(HT @undefined)中返回一个字符串来传递警报,但我甚至会避免这样做,因为弹出窗口通常是不好的,而且大多数人在真正考虑框中的内容之前,都会做最小的处理来找到make-this-thing-go-away选项。
iugsix8n3#
您在window.onbeforeunload中定义的函数,如果它返回一个字符串,它将弹出一个带有该消息的确认导航提示。
可以忽略警报!
有些浏览器会以不同的方式处理onbeforeunload。例如,最近的Firefox会忽略您的返回字符串,只显示标准消息。
oipij1gg4#