微信web端 后退強(qiáng)制刷新

<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對(duì)象,history.replaceState(null, null, "/currentURL?a="+uuid());在頁(yè)面加載完成后改變當(dāng)前url(拼接一個(gè)uuid或者隨機(jī)數(shù)),這樣每次后退的時(shí)候,瀏覽器發(fā)現(xiàn)當(dāng)前url在瀏覽器緩存中不存在就會(huì)去重新加載。
  • 但是 ios 端不支持上述方法,所以用了一段jquery代碼解決。

轉(zhuǎn)載請(qǐng)注明出處,原文作者:殷天文

關(guān)于h5 history對(duì)象的使用

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容