Jquery阻止窗口关闭

时间:2009-10-14 09:54:40

标签: javascript jquery window

我想询问用户是否真的要离开页面,当他点击关闭按钮时就像在Google文档中完成一样。如何使用jquery做到这一点?

3 个答案:

答案 0 :(得分:28)

您将窗口的onbeforeunload属性设置为函数。

This post has a good example on how to do it.

或另一个例子:

<script language="JavaScript">
  var needToConfirm = true;

  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
    if (needToConfirm)
      //return message to display in dialog box;
  }
</script>

...

<input type="Submit" value="Save" onclick="needToConfirm = false;" />


要为您的表单设置needToConfirm,您可以:

$(document).ready(function() { 
    $(':input', document.myForm).bind("change", function() { needToConfirm = true; }); // Prevent accidental navigation away
});

答案 1 :(得分:3)

以下为我工作;

 $(window).unload(function() {
                if(event.clientY < 0) {
                    //do whatever you want when closing the window..
                }
            });

答案 2 :(得分:-2)

JQuery UI可能对您有用 - 请参阅this link。它显示了几种不同类型的对话框 - 我想要的是“Modal Confirmation”。但请记住,JQuery UI库非常重要,因此可能会更好地查找更具定制性的选项(通过搜索JQuery Confirm Modal可以获得一些选项)。我无法保证这些解决方案的质量,因为我从未尝试过它们。