防止意外返回浏览

Xti*_*ian 5 javascript browser navigation back-button

我有一个客户端刚拿到Apple Magic Mouse.我们建立了一个食谱网站,当她输入食谱的所有信息时,她感到非常沮丧,然后转向她的新鼠标并意外滚动到右边,它将进行后退浏览,所有她的信息都丢失了.所以她想警告/弹出以防止在该页面上发生这种情况.

有什么建议或指向我这样做的JS吗?

Lek*_*eyn 11

这是一个基本的"休假前警告"脚本.当用户按下textarea中的某个键时,如果他将要离开该页面,将通知用户:

<script type="text/javascript">
var changes = false;
window.onbeforeunload = function(){
   if(changes){
      return "You're about to leave this page.";
   }
};
</script>
<textarea onkeypress="window.changes=true">recipe here</textarea>
Run Code Online (Sandbox Code Playgroud)

或者,您可以在页面加载时将文本字段的内容存储在变量中,然后进行比较.当访问者只需按下textarea中的箭头键而不实际修改它时,这将消除一些混乱.