在用户选择重新加载/关闭浏览器/退出页面之前,有没有办法执行一个函数?在浏览器重新加载/关闭浏览器/退出页面之前执行Javascript函数?
我需要这个“在线/离线”状态的功能我想写。我想检测用户是否仍在网页上。
任何想法? :)
也许有这种更好的方法?
在用户选择重新加载/关闭浏览器/退出页面之前,有没有办法执行一个函数?在浏览器重新加载/关闭浏览器/退出页面之前执行Javascript函数?
我需要这个“在线/离线”状态的功能我想写。我想检测用户是否仍在网页上。
任何想法? :)
也许有这种更好的方法?
内联:
window.onbeforeunload = function(event) {
// do something
return null;
};
或运行预先定义的函数:
window.onbeforeunload = myFunction;
var myFunction = function(event) {
// do something
return null;
}
注:
当这个事件返回一个非空值,则提示用户以 确认页面卸载。在大多数浏览器中, 事件的返回值显示在此对话框中。
自2011年5月,调用 window.showModalDialog(),window.alert(),window.confirm()和 window.prompt HTML5规范状态25()方法可以此事件中被忽略。
在https://developer.mozilla.org/en-US/docs/DOM/window.onbeforeunload
Downvoters,护理评论,为什么? –
如果你返回一个字符串,那么这将在弹出窗口中显示为一条消息给用户。空/返回值将允许浏览器像往常一样卸载页面。看到这里MDN参考:https://developer.mozilla.org/en-US/docs/DOM/window.onbeforeunload – PatrikAkerstrand
-1增加不必要的函数声明,我将它,如果你补充一点,变为+1(如果)返回值显示在提示框中,询问用户他/她是否真的想离开该页面 – C5H8NNaO4
使用window.onbeforeunload查看文档,则当用户离开你的页面触发:http://geekswithblogs.net/hmloo/archive/2012/02/15/use-window.onbeforeunload-event-to-stop-browser-from-closing-or-disable.aspx
试试这个:
$(window).unload(function() {
alert("Handler for .unload() called.");
});
OR这一点,如果你想构警报
<script>
window.onbeforeunload = function(e) {
return 'Your dialog message';
};
</script>
window.onbeforeunload =函数(){...} – C5H8NNaO4
window.onbeforeunload,参考:https://developer.mozilla.org/en-US/docs/DOM/window.onbeforeunload – PatrikAkerstrand