html5如何及時更新緩存文件(js、css或圖片)


我們在使用offline cache的時候,有時候可能會更新資源,如js,css或者圖片的 更新。但是在沒有更新以前用戶已經緩存了舊版本的資源,當在次訪問的時候 他使用的還是舊版本的資源,如何才能讓用戶及時的更新緩存資源呢? 

更新緩存資源主要有兩種方法,通過修改配置文件的版本號或者調用js完成更新 (腳本之家 )
js更新方法 

復制代碼
代碼如下:
if (window.applicationCache.status == window.applicationCache.UPDATEREADY) { 
window.applicationCache.update(); }

修改文件 

更新manifest文件 
瀏覽器發現manifest文件本身發生變化,便會根據新的manifest文件去獲取新的資源進行緩存。 
當manifest文件列表並沒有變化的時候,我們通常通過修改manifest注釋的方式來改變文件,從而實現更新。 
注釋改變就是指配置文件的版本號

摘自(http://www.ttwshell.com/article/HTML5-CSS-JS-Tips-Disable-Cache.html)

Meta法

目前在chrome調試還沒有遇到問題,好用!此方法假設瀏覽器是個好人!很聽我們的話!

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="0">

 

如果不明白,可以看我的另一篇文章HTML5 meta標簽的總結

隨機數法 Cache Buster

隨機數法本身相當於渲染模板時添加版本號,在某些版本的瀏覽器,此法無效。此方法假設瀏覽器是個小壞蛋!他有可能調皮,不聽我們的話!

<script>
    var js = document.createElement("script");
    js.src = "test.js?random" + Math.random();
    document.body.appendChild(js);
</script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM