如何覆盖“OnBeforeUnload”对话框并将其替换为我自己的对话框?
2022-08-29 23:35:22
我需要在用户离开页面之前警告他们未保存的更改(这是一个非常常见的问题)。
window.onbeforeunload = handler
这有效,但它会引发一个默认对话框,其中包含一个令人讨厌的标准消息,该消息包装了我自己的文本。我需要完全替换标准消息,以便我的文本清晰,或者(甚至更好)使用jQuery将整个对话框替换为模式对话框。
到目前为止,我失败了,我还没有找到其他似乎有答案的人。这有可能吗?
Javascript在我的页面中:
<script type="text/javascript">
window.onbeforeunload = closeIt;
</script>
closeIt() 函数:
function closeIt()
{
if (changes == "true" || files == "true")
{
return "Here you can append a custom message to the default dialog.";
}
}
使用jQuery和jqModal,我尝试过这种事情(使用自定义确认对话框):
$(window).beforeunload(function () {
confirm('new message: ' + this.href + ' !', this.href);
return false;
});
这也不起作用 - 我似乎无法绑定到事件。beforeunload