1

我有一个网页,其中加载了一个 ajax 模式弹出窗口。当模式弹出窗口存在时,我们需要限制用户关闭浏览器。我们已经处理了 onbeforeunload 事件,但它显示了一个弹出窗口“你确定你想要ot 离开此页面”。如何抑制此弹出窗口并阻止页面关闭。

<script>
window.onbeforeunload=function() {
window.alert("Hai");return false;
}
</script>
4

1 回答 1

1

不幸的是,您永远无法阻止关闭浏览器窗口,因为这会导致各种滥用(想象一个色情网站打开一个您无法关闭的窗口)。

onbeforeunload 事件处理程序应该返回一个字符串,该字符串可以向用户解释如果他关闭窗口会发生什么,因为返回的字符串显示在确认框中。例如:

window.onbeforeunload = function() { 
    return "If you close the window your unsaved changes will be lost!";
}

该字符串与带有确定和取消按钮的不可覆盖的确认对话框相结合,有望引导用户做出正确的决定。

于 2013-04-03T08:39:27.640 回答