返回上一页触发刷新

要知道history.back返回上一页是不会触发刷新的,这是浏览器的机制,但我们可以做些兼容处理,代码如下:

进入页面后,先把referrer保存到sessionStorage里

window.addEventListener('DOMContentLoaded', function() {
  // 保存referrer
  if(location.href !== document.referrer) {
    sessionStorage.setItem('referrer', document.referrer);
  }
});

在操作后调用下面代码返回上一页

if(location.href !== document.referrer) {
  location.href = document.referrer;
} else {
  if(sessionStorage.getItem('referrer')) {
    location.href = sessionStorage.getItem('referrer');
  } else {
    history.back();
  }
}

注意:使用document.referrer时,不能设置meta头referrer为no-referrer,不然拿不到referrer数据

PS:写作不易,如要转裁,请标明转载出处。
%{ comment.page.total }条评论

微信小程序:前端开发宝典

相关笔记
工具操作
  • 内容截图
  • 全屏
登录
注册
回顶部