【发布时间】: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。
标签: javascript vue.js firefox onbeforeunload confirm