微信web端后退强制刷新功能的实现代码

具体代码如下所示:

 

<script>
  //生成uuid
  var uuidChars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split("");
  function uuid() {
    var r;
    var uuid = [];
    uuid[8] = uuid[13] = uuid[18] = uuid[23] = "-";
    uuid[14] = "4";
    for (i = 0; i < 36; i++) {
      if (!uuid[i]) {
        r = 0 | Math.random() * 16;
        uuid[i] = uuidChars[(i == 19) ? (r & 0x3) | 0x8 : r];
      }
    }
    return uuid.join("");
  }
  // 兼容 android
  history.replaceState(null, null, "/currentURL?a="+uuid());
  // 兼容 ios
  $(function () {
     var isPageHide = false;
     window.addEventListener('pageshow', function () {
      if (isPageHide) {
       window.location.reload();
      }
     });
     window.addEventListener('pagehide', function () {
      isPageHide = true;
     });
  })
</script>

•android 端使用的h5中的history对象,history.replaceState(null, null, "/currentURL?a="+uuid());在页面加载完成后改变当前url(拼接一个uuid或者随机数),这样每次后退的时候,浏览器发现当前url在浏览器缓存中不存在就会去重新加载。
•但是 ios 端不支持上述方法,所以用了一段jquery代码解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值