Chrome浏览器中的onBeforeUnload事件无法正确工作

12

我使用这段代码有一段时间了,直到昨天它一直很好用:

window.onbeforeunload = function() {
    return "¡Atención! Si continúas no podrás volver atrás y podrías perder datos. Revisa todos los campos y termina el trabajo antes de moverte de esta página. ¿Seguro que quieres continuar?";
}
问题是Chrome显示如下内容: Chrome screenshot 而Edge正确显示: Edge screenshot 我做错了什么?
注:语言不是问题,因为我已尝试过英语和西班牙语。
1个回答

19

你没有做错什么。Google决定像Mozilla一样,不再允许您显示自定义消息。这在Chrome 51中生效了。详情请见此链接

您仍然需要返回某些东西来触发内置对话框,但是您不再被允许确定该对话框的内容。

这里是BugZilla入口,Mozilla决定在Firefox中这样做。

这里是Chrome的问题,Google决定在Chrome中这样做。

*(新版Chrome 51行为被报告为一个错误,但自然地,由于这是设计上的问题,它在几小时内被关闭了。)


1
当我最初尝试运行OP的代码时,在这个例子中它按预期工作,但是在更新到51.0.2704.84之后,它现在返回了预期的消息。 - Rion Williams

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接