JS清除IE瀏覽器緩存的方法
js中自動清除ie緩存方法 — 常用
對于動態文件,比如 index.asp?id=... 或者 index.aspx?id=... 相信有經驗的程序員都知道怎樣禁止瀏覽器緩存數據了.
但是對于靜態文件(css,jpg,gif等等), 在什么場合下面我們需要禁止瀏覽器緩存他們,怎么做?
方法一:Dojo中我們可以用簡單的方法完成:在dojo.xhrGet(包括post)等方法中都包含preventCache屬性,此屬性的含義: “默認為啟用瀏覽器緩存,否則將通過自動增加不同的參數來確保瀏覽器緩存失效” 我們只要把此屬性賦值為:“true”即可 。
方法二:document.write("
其中 ver=113 的 113就是版本號,一般都是采用 CVS 或其他工具生成的開發版本號 。
這樣真正做到了應該緩存的時候緩存靜態文件 , 當版本有更新的時候從獲取最新的版本,并更新緩存 。
對于圖像 來有效利用和更新緩存.
js清除瀏覽器緩存 二
為了減小瀏覽器與服務器之間網絡傳輸壓力,往往對靜態文件,如js,css,修飾的圖片做cache,也就是給這些文件的HTTP響應頭加入 Expires和Cache-Control參數,并指定緩存時間,這樣一定時間內瀏覽器就不會給服務器發出任何的HTTP請求(除了強制刷新),即使在 這段時間內服務器的js或css或圖片文件已經更新多次,但瀏覽器的數據依然是原來最能初cache的舊數據,有沒有辦法讓瀏覽器拿到已經修改后的最新數 據呢?
有,方法是用ajax請求服務器最新文件,并加上請求頭If-Modified-Since和Cache-Control,如下:
復制代碼 代碼如下:
$.ajax({
type: "GET",
url: "static/cache.js",
dataType: "text",
beforeSend :function(xmlHttp){
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.setRequestHeader("Cache-Control","no-cache");
}
});
這里用了jquery.
這樣瀏覽器就會把最新的文件替換掉本地舊文件 。
當然,這里還一個問題就是js必須知道服務器更新了那個js、css、圖片,利用cookie和時間版本應該可以解決.
jquery自從1.2開始就有ifModified和cache參數了 , 不用自己加header
ifModified Boolean Default: false
Allow the request to be successful only if the response has changed since the last request. This is done by checking the Last-Modified header. Default value is false, ignoring the header.
cache Boolean Default: true
Added in jQuery 1.2, if set to false it will force the pages that you request to not be cached by the browser.
復制代碼 代碼如下:
$.ajax({
type: "GET",
url: "static/cache.js",
dataType: "text",
cache:false,
ifModified :true
});
您可能感興趣的文章:JS localStorage實現本地緩存的方法讓html頁面不緩存js的實現方法高性能WEB開發 JS、CSS的合并、壓縮、緩存管理禁止js文件緩存的代碼js 設置緩存及獲取設置的緩存JSP頁面緩存cache技術--瀏覽器緩存介紹及實現方法js、css、img等瀏覽器緩存問題的2種解決方案Js 代碼中,ajax請求地址后加隨機數防止瀏覽器緩存的原因詳解AngularJS中$http緩存以及處理多個$http請求的方法JS實現前端緩存的方法
相關經驗推薦
- 解決ExtJS在chrome或火狐中正常顯示在ie中不顯示的瀏覽器兼容問題
- Win 10 Edge瀏覽器可兼容IE網站,為照顧企業用戶
- Win10系統下IE瀏覽器無法播放Falsh的故障原因及解決方法
- 兼容IE、FireFox、Chrome等瀏覽器的xml處理函數js代碼
- IE瀏覽器怎么設置迅雷下載和自帶下載器相互切換?
- win8.1界面下啟動IE 11瀏覽器metro版的實用小妙招
- win10怎么打開斯巴達瀏覽器 ie11開啟Spartan瀏覽器教程
- 戰地4瀏覽器插件在IE11無法正常加載 具體解決方法分享
- win10電腦用IE11瀏覽器看視頻容易出現綠屏故障怎么辦?附解決方法
- win10中edge瀏覽器或者IE總是出現假死訪問頁面反應該怎么辦?
