我想知道当用户试图离开页面时如何显示确认框,当您尝试关闭“提问”页面时,如StackOverflow中的这一个。
提前谢谢你。
答案 0 :(得分:6)
实际上,所有必要的是:
window.onbeforeunload = function(){ return "You should save your stuff."; }
这也是一种骗局:How to show the "Are you sure you want to navigate away from this page?" when changes committed?
答案 1 :(得分:3)
在javascript中,将函数附加到window.onbeforeunload
,如下所示:
window.unbeforeunload = function (e)
{
// return (prompt ('Are you sure you want to exit?'));
// EDIT: Amended version below:
var e = e || window.event;
if (e) e.returnValue = 'Your exit prompt';
return 'Your exit prompt';
}
编辑: 正如下面的评论所示,我误解了事件的发生。它现在应该按预期工作。
答案 2 :(得分:2)
可能是一个骗子:How do you prevent a webpage from navigating away in JavaScript?,但您可以通过向window.onbeforeunload事件添加委托来完成此操作
<script type="text/javascript">
window.onbeforeunload = function() {
//will show a dialog asking the user if
//they want to navigate away from the current page
// ok will cause the navigation to continue,
// cancel will cause the user to remain on the current page
return "Use this text to direct the user to take action.";
}
</script>
更新: doh!更新代码以执行OP真正想要的:D
答案 3 :(得分:1)
您想要抓住onbeforeunload
的{{1}}事件。然后,如果您返回一个字符串,浏览器将在提示中显示您的消息。这是an article with sample code。
答案 4 :(得分:1)
您可以使用 window.onbeforeunload 事件来捕获此信息。如果textarea中有任何值,则会显示警告消息。
答案 5 :(得分:-4)
这是基于浏览器的。
只要您实施<form>
代码,并在表单中输入内容,并在Google Chrome中输入,就会提示您该消息。