如何禁用 Firefox 中的“离开页面”确认对话框?
Posted
技术标签:
【中文标题】如何禁用 Firefox 中的“离开页面”确认对话框?【英文标题】:How do I disable the "Leave page" confirmation dialog in Firefox? 【发布时间】:2022-01-19 18:27:26 【问题描述】:我的Vue
应用程序中有以下代码,用于检测用户何时关闭选项卡:
onBeforeUnload()
window.onbeforeunload = null;
return undefined;
禁用“离开页面”确认对话框在 Chrome 中有效,但在 Firefox 中无效。这是为什么?如何禁用 Firefox 上的确认对话框?
编辑 1: 添加和删除 beforeunload
监听器
created()
window.addEventListener('beforeunload', this.onBeforeUnload);
,
beforeDestroy()
window.removeEventListener('beforeunload', this.onBeforeUnload);
【问题讨论】:
某些东西可能是用window.addEventListener()
添加确认,而不是分配给window.onbeforeunload
。除非您知道所添加函数的名称,否则无法删除它。
你可以通过给它分配一个空函数来覆盖它
@Barmar 我在我的帖子中添加了一个编辑,其中包含addEventListener
用于我的Vue
应用程序。
我认为应该可以。
@Barmar 它适用于 Chrome,但不适用于 Firefox。
【参考方案1】:
将我的 onBeforeUnload
方法更改为此解决了问题:
onBeforeUnload(e)
window.onbeforeunload = () => ;
delete e.returnValue;
【讨论】:
以上是关于如何禁用 Firefox 中的“离开页面”确认对话框?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Twitter Bootstrap 中同时打开两个模态对话框