【发布时间】:2017-08-21 15:11:58
【问题描述】:
我的网络应用正在监听页面刷新。
我正在尝试这样做:
window.onbeforeunload = dialogBox;
这个想法是显示一个对话框,以防止页面刷新,直到用户选择两个按钮中的任何一个来确定他们是继续刷新还是取消刷新。
不幸的是,页面显示对话框一秒钟,然后继续刷新。无论如何我可以使用“onbeforeunload”来阻止页面继续刷新并显示我的对话框?
使用'onbeforeunload'是不可能实现的吗?
我的对话框的代码:
function dialogBox()
{
$("#dialog").html("");
$("#dialog").append("There appears to be some unsaved changes");
$( function() {
$( "#dialog" ).dialog({
modal: true,
buttons: {
Cancel: function() {
$(this).dialog( "close" );
},
"Save": function() {
},
},
})
});
}
感谢大家的宝贵时间。
编辑:我不想阻止用户刷新。我不想显示使用 onbeforeunload 时出现的通用弹出框,而是想通过调用生成该对话框的函数来显示自定义对话框。我可以在几秒钟内显示它,而不是永久地显示,直到有人做出选择。然后,该选择应继续刷新或通过选择“取消”将其完全刷新一半。
如果有帮助,我将使用 Google Chrome 作为我的首选网络浏览器。
【问题讨论】:
-
可能相关:Prevent any form of page refresh using jQuery/Javascript。似乎无法在页面重新加载之前实现自定义对话框..
-
感谢您的回复阿莫斯。我会重申我的问题,这样我就更清楚了。
-
这对我没有帮助。
-
它;不是可以实现的伙伴。 Internet 的顶级网站都在诉诸默认机制。请参阅 facebook、gmail 或 google +。
标签: javascript jquery html