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

如何使用JavaScript移除页面刷新确认弹窗?附相关代码

移除页面刷新确认弹窗的方法

当前代码触发的页面刷新确认弹窗,根源在于window.onbeforeunload函数第一行就返回了非空字符串——浏览器只要检测到这个事件函数返回字符串,就会弹出离开/刷新确认框。另外要注意,原代码里return语句写在最前面,导致后面的endStream调用和$.get请求根本不会执行,这也是个隐藏问题。

要移除弹窗同时保留原有逻辑,按以下方式修改:

  • 删除原有的return "Your files are not completely uploaded..."这一行,或者将返回值改为undefined(只要不返回字符串,就不会触发弹窗)
  • 把return语句移到函数最后,确保所有业务逻辑代码都能执行到

修改后的完整代码:

window.onbeforeunload = function(e) {
  if(is_streaming){
    endStream('Yes');
  }

  if(viewStreamId != 0 && !is_streaming){
    var leaveData = user_info.id+','+user_info.first_name+','+user_info.profile_photo+','+viewStreamId;   
    $.get( request_source()+'/live.php', {action: 'leave', query: leaveData} );    
  }
  // 不返回字符串,浏览器就不会弹出确认弹窗
  return undefined;
};

如果只是临时需要移除弹窗,也可以直接解绑这个事件:

window.onbeforeunload = null;

内容的提问来源于stack exchange,提问作者Cuet In

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 15:27:44