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

如何在用户离开页面时清除sessionStorage?

简便实现离开页面删除指定sessionStorage项

嘿,这个需求其实完全不用搞复杂的AJAX,直接结合beforeunload事件和原生sessionStorage API就能轻松搞定,代码超简洁:

$(window).on("beforeunload", function() {
  // 精准删除你存的那个'save'项
  sessionStorage.removeItem('save');
  
  // 要是之后有清空所有sessionStorage的需求,也可以用这个:
  // sessionStorage.clear();
});

为什么这个方案更合适?

  • beforeunload事件会覆盖所有用户离开页面的场景:关闭标签页、刷新页面、跳转其他链接、甚至浏览器崩溃前的最后触发(部分场景)
  • sessionStorage.removeItem()是原生标准API,专门用来删除指定键的存储数据,执行效率高,完全不需要额外的异步请求开销

小补充

如果你不需要在用户离开时弹出确认提示框(原代码里return "xxx"就是干这个的),可以直接去掉return语句,这样用户离开页面时不会被弹窗打扰,体验更顺畅。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 14:42:43