❶ 請教高手,html頁面中的圖片,如何讓瀏覽器緩存至本地
方法很簡單,你把保留網頁歷史的時間改長而且加大緩存目錄的體積就行了,方法就是看瀏覽器頂部,工具,internet選項,這個界面有歷史長度,最多999天,看裡面的「設置」,可以改保存網頁的路徑,以及體積大小。在歷史時間內,比如30天,不需要再次緩存頁面,但是有個問題,就是你如果在線聽歌,看大圖片,如果過多,會導致你的IE緩存很龐大,有可能超出你的IE默認的體積,所以你最好轉移到非系統分區,而且設置體積很大,1G甚至更大,否則超出後默認刪除早期的圖片,歌曲,flash等文件。
❷ 如何能html改圖片時直接使用本地緩存,完全不走流量(html 或 javascript 解決方案,chrome瀏覽器)
首先…作為吊絲程序員(學生現役)…給幾個吊絲的方法。
預載入隱藏
//在預載入的時候,直接讀出隱藏的圖片
$("#blablabla").append($.("#someImg").clone());
$("#blablabla").last().attr("sec",$.load("url~~~",function(){
//做一下隱藏
}));
然後在一直到某點--》之後…就把原來的圖片替換掉。
style的樣式…如果還不一樣的話……就是自己代碼的問題了……
用web Strorage
簡單來說…把圖片數據流化並且放入web strorage,然後在讀取的時候生產圖片,並且放入img容器。
304狀態是必要的
伺服器端和客戶端使用Conditional Gets功能驗證緩存數據
客戶端將條目放在緩存里,在過期之後重新驗證。伺服器端必須實現Conditional GET功能(使用ETags或者last modified的header)。
JS代碼:
$.ajax({
url:'/Home/ExpiresWithConditional',
ifModified:true,//這里是關鍵
cache:true,
success:function(data,status,xhr){
$('#content').html(data.count);
}
});
而讓服務端響應304狀態是確保在圖片被修改過以後,能夠再返回一個不同的值……
所以……
流量還是不要省了……→_→
❸ 如何給html網頁設置緩存
在Apache環境下,可以通過在.htaccess文件中添加下面的代碼,設置圖片的HTTP緩存和有效期(需要開啟apache的headers模塊支持):
# Image and Flash content Caching for ONE Year blog.gimhoy.com<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf)$"> Header set Cache-Control "max-age=3156000"
其中max-age後面這個數字就是設置的緩存有效期(以秒為單位),比如上面的代碼設置了網站的圖片使用為期一年(3156000秒)的HTTP緩存。
在Nginx下,可以通過修改nginx.conf配置文件,來修改緩存設置:
location ~* \.(flv|gif|jpg|jpeg|png|ico|swf)$ { expires 1y; access_log off; break; }
同樣的方法,你也可以給js和css文件設置緩存。
❹ html圖片緩存問題
方法1. 將圖片下載到本地,缺點是保存時會彈出文件保存提示框,需要用戶配合
方法2. 將圖片存到localStorage,用戶無感知,缺點是最多存5MB
不知道樓主什麼場景瀏覽器無法自動緩存資源。手動緩存是個很不常規的手段
❺ 怎樣解決css的圖片緩存問題
Sean同學說,修改圖片名稱。。
❻ 如何設置CSS,JS,圖片緩存
在Apache環境下,可以通過在.htaccess文件中添加下面的代碼,設置圖片的HTTP緩存和有效期(需要開啟apache的headers模塊支持): # Image and Flash content Caching for ONE Year blog.gimhoy.com Header set Cache-Control "
❼ css中的圖片不緩存,js里的也不緩存是嗎
css js img 都會緩存,特別是ie,你要修改了js或者css文件以及圖片, 不強刷有時候看到還是未改前的。
❽ 靜態網頁中圖片如果實現緩存
系統默認是會每打開一個網站就行進該網站進行緩存的,以備下次訪問時能更快點。
❾ javascript+div+html 獲得實時圖片(IP攝像頭的實時圖片)時緩存問題
url最後加一個隨機數 如下:
var div =document.getElementById('xx');
var span = document.createElement('span');
span.innerHTML = "<img src='http://admin:[email protected]/cgi-bin/video.cgi?msubmenu=jpg&"+Math.random()+"'>";
div.appendChild(span)
<button onclick="ii()">圖片 </button>
❿ HTML設圖片過期代碼
使用隨機數,就可以讓圖片過期:
如下,圖片後面有ver=3124,其中3124就是隨機數,圖片下次載入時因為隨機數不同,瀏覽器會認為圖片地址已經更改,故而重新從伺服器獲取圖片數據。
這個方法,被許多大型網站,用來製作隨機驗證碼。
示例如下:
<img src="/images/v.jpg?ver=3124" />
圖片過期只需另ver=其他的數值,就過期了,呵呵
======================================
緩存圖片的代碼如下:
document.execCommand("BackgroundImageCache", false, true);
在網頁最後加上
<script>document.execCommand("BackgroundImageCache", false, true);</script>
就可以緩存圖片了
======================================
哎,詳細給你講講吧。
瀏覽器本來就有緩存功能,是要設置Meta http-equiv="Expires",瀏覽器就會自動緩存js css html img等文件。但是ie瀏覽器有漏洞,在處理圖片的問題上存在很多問題,其中一個比較著名的就是背景圖片漏洞,這個需要使用
<script>document.execCommand("BackgroundImageCache", false, true);</script>
來fix bug.這樣,瀏覽器就會自動緩存圖片,緩存的時間由Meta http-equiv="Expires"來設定。
============================
最後一招,不行的話我也沒有辦法,人家hao123用的是伺服器緩存策略,通過linux的htaccess來設置的。IIS設置,必須通過伺服器策略來設置。
現在其次的策略,通過設置http頭來設置頁面文件過期時間。
asp:
response.setDateHeader("Expires", now + 15 * 60000);
其他語言的代碼還是網路吧