js本地緩存
㈠ 怎麼用js實現把數據存儲到本地
可以用localstorge或者是瀏覽器本地資料庫,這對瀏覽器有要求,低版本的IE是不支持的
個人認為如果它已經被瀏覽器下載到緩存,而且尚未過期,那麼瀏覽器會優先使用緩存的,雖然瀏覽器也會向伺服器發送文件請求,但如果請求的文件自上次被下載以來沒有變更過,實際是不會重復下載的,伺服器會返回一個信號,通知瀏覽器直接使用緩存中的文件,即可起加速作用,又可節省帶寬.
如果沒有人為干預,瀏覽器和伺服器通常可以自動完成上述過程,不用特別的設計.
禁用客戶端緩存
HTM網頁
<META HTTP-EQUIV="pragma"
CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control"
CONTENT="no-cache, must-revalidate">
<META
HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57
GMT">
ASP網頁
<%
Response.Expires =
-1
Response.ExpiresAbsolute = Now() - 1
Response.cachecontrol = "no-cache"
%>
PHP網頁
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
JSP
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires", 0);
C#中禁止cache的方法!
Response.Buffer=true;
Response.ExpiresAbsolute=System.DateTime.Now.AddSeconds(-1);
Response.Expires=0;
Response.CacheControl="no-cache";
加入
<MEAT HTTP-EQUIV="Pragma"
CONTENT="no-cache">
不緩存。
一、Expires(期限)
說明:可以用於設定網頁的到期時間。一旦網頁過期,必須到伺服器上重新調閱。
用法:<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997
08:21:57 GMT">
注意:必須使用GMT的時間格式。
二、Pragma(cache模式)
說明:禁止瀏覽器從本地機的緩存中調閱頁面內容。
用法:<META
HTTP-EQUIV="Pragma" CONTENT="no-cache">
注意:這樣設定,訪問者將無法離線瀏覽。
三、腳本實現
<%
response.expires = 0
response.expiresabsolute = now()
- 1
response.addHeader "pragma","no-cache"
response.addHeader "cache-control","private"
Response.cachecontrol = "no-cache"
%>
IE瀏覽器訪問一個網頁的時候,首先會到臨時文件夾中去尋找和這個網頁相關的各個文件(如各種圖片)。如果在臨時文件夾中找到了一些文件,那麼瀏覽器就會使用這些臨時文件夾中的文件,而不去伺服器下載這些文件。
不幸的是,我的伺服器上的文件是經常變化的,如果IE優先考慮臨時文件夾中的文件,那麼就不能反映出我伺服器上的變化。
現在有兩個解決辦法,但都有缺陷:
一是使用網頁的自刷新,但是刷新速度快的話會有閃爍,不符合我其他方面的要求。
二是在IE設置中設成「每次訪問此頁時檢查」。此時IE不考慮臨時文件夾中的內容,直接從服務下載各個文件。但是這種辦法需要用戶進行設置,對用戶來說有點麻煩。而且這樣的設置會影響用戶訪問其他網站的速度。
㈣ JS 如何清除頁面緩存
1.動態頁面:index.asp?id=....
2.使用jquery,$.ajaxSetup({cache : false });
3.在html里的head標簽中加
<meta http-equiv ="proma" content = "no-cache"/>
<meta http-equiv="cache-control" content="no cache" />
<meta http-equiv="expires" content="0" />
另外一種:
<html http-equiv="proma" content="no-cache"/>
<html http-equiv="content-type" content="no-cache , must-revalidate"/>
<http http-equiv="expires" content=" Wed , 26 Feb 1997 08:21:57 GMT"/>
另外 ,在提交信息時,總是出現舊的內容,此時就應該考慮是本地瀏覽器緩存的原因了。
清空臨時緩存的方法:
<body onload ="javascript : document.yourFormName.reset()">
㈤ 如何緩存javascript文件
瀏覽器自己會緩存,只要js文件的url不變,再次請求時就會直接載入緩存文件
㈥ JS裡面獲取、存儲、刪除緩存裡面的數據的具體代碼是什麼
js如何設置緩存及獲取設置的緩存
代碼如下:
//設置緩存,獲取設置的緩存,鍵值對形式,namevalue
//獲取鍵的值
varr
r=localStorage.getItem("key");
//設置鍵的值
localStorage.setItem("key",1);
//刪除鍵
localStorage.removeItem("key");
㈦ JS怎麼把客戶端里請求下來的那些圖片怎麼緩存到本地
window.open就自動下載了。
但是圖片可以是svg的話
function saveAs(Url,filename){
var blob=new Blob([''], {type:'application/octet-stream'});
var url = webkitURL.createObjectURL(blob);
var a = document.createElementNS(xhtml,'a');
a.href = Url;
a.download = filename;
var e = document.createEvent('MouseEvents');
e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
a.dispatchEvent(e);
webkitURL.revokeObjectURL(url);
㈧ js如何解決頁面緩存
你可以再html頁面禁止緩存的啊,比如在html頁面加上標簽
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
<META HTTP-EQUIV="expires" CONTENT="0">
等這四個都是可以的
具體的可以再網路上找到
㈨ js文件緩存到本地
對js文件進行hash,每次客戶端請求的時候取回hash,如果緩存的js的hashcode與取回的hashcode不一致,則重新download腳本文件,否則不用。
㈩ 用js如何在用戶本地緩存一些數據 如何實現
可以利用localStorage來儲存數據,用法也很簡單:
localStorage["key"] = "要儲存的數據";
提取出來也同樣簡單:
var x = localStorage["key"]
key是鍵名,可以自由設定。
需要注意的是,只有支持HTML5的瀏覽器才能使用localStorage