You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Edge浏览器中beforeunload自定义文本不生效问题咨询

未保存更改页面离开提示自定义文本不生效问题

你使用以下JavaScript代码检测未保存更改时的页面离开行为:

window.addEventListener('beforeunload', function (e) {
    if (modified) {
        e.preventDefault();
        e.returnValue = 'Your changes have not been saved.';
    }
});

但在Microsoft Edge浏览器中,实际显示的提示文本和你设置的自定义内容不符,这是因为主流浏览器(包括基于Chromium内核的Edge)早已修改了beforeunload事件的规则,核心原因是安全与用户体验考量:

  • 早期浏览器允许网站自定义提示文本,但部分恶意网站会利用这个特性设置误导性、恐吓性内容,诱导用户做出不符合自身意愿的操作
  • 现在所有现代浏览器都不再支持自定义beforeunload的提示文本,统一显示浏览器自带的标准化提示内容,避免用户被误导

你的代码逻辑本身没问题:只要modified为true,设置e.returnValue或调用e.preventDefault(),浏览器就会触发离开确认提示,但提示文本由浏览器决定,不再读取你设置的字符串。

内容的提问来源于stack exchange,提问作者Jonathan Wood

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 02:43:13