当用户关闭标签页或刷新页面时,网站必须显示一个弹出窗口以确认这一点。 我试过这段代码:
window.onbeforeunload = function (e) {
return confirm("Are you sure you want to leave this page?");
};
这在firefox或chrome中都不起作用。 在firefox中没有出现弹出窗口。在chrome中,默认值也没有被覆盖。 我甚至尝试使用以下代码,但无济于事:
window.onbeforeunload = function (e) {
var dialogText = 'Are you sure about this?';
e.returnValue = dialogText;
return dialogText;
};
如何解决此问题? 任何代码片段都会有所帮助。谢谢。
答案 0 :(得分:1)
从Firefox 4,Chrome 51,Opera 38和Safari 9.1开始,将显示不受网页控制的通用字符串,而不是返回的字符串。例如,Firefox显示字符串“此页面要求您确认要离开 - 您输入的数据可能无法保存。”
答案 1 :(得分:0)
来自Firefox的文档:
为了防止不需要的弹出窗口,浏览器可能无法显示在beforeunload事件处理程序中创建的提示,除非页面已与之交互。
如果用户之前没有与该网页进行过互动,则无法显示弹出窗口。