你确定要导航吗?

时间:2010-02-25 02:24:39

标签: javascript

什么是stackoverflow和Gmail等网站使用的JavaScript代码/事件,一旦用户开始编辑并尝试离开,就会测试用户退出网页?

"Are you sure you want to navigate away from this page?"

2 个答案:

答案 0 :(得分:8)

使用的事件称为onbeforeunload

<html>
<head>
    <script type="text/javascript" src="jquery.js"></script>
</head>
<body>
    <input id="foo"></input>

    <script type="text/javascript">
        function unloadMessage() {
            return "Are you sure you want to leave?";
        }

        function setConfirmUnload(enabled) {
            window.onbeforeunload = enabled ? unloadMessage : null;
        }

        $(document).ready(function() {
            $("#foo").keypress(function() {
                setConfirmUnload(true);
            });
        });
    </script>
</body>
</html>

答案 1 :(得分:3)

onbeforeunload事件。 Mozilla提供了有用的示例代码。你只想拥有一个功能:

  1. 返回一个字符串
  2. 将e.returnValue设置为该字符串,其中e是参数或window.event。
  3. 该字符串将用作您的自定义消息。