當前位置:首頁 » 文件管理 » js腳本緩存

js腳本緩存

發布時間: 2022-07-09 21:34:30

⑴ js如何獲取緩存

1、創建一個cache.js文件,前端頁面,定義那些數據需要一次性拿到前端緩存,定義一個對象來保存這些數據。

⑵ js如何清空頁面上js腳本的緩存,jsp頁面上js代碼控制數據的變動,如刪除一條數據,也就是刪除節點後,

首先呢,你所使用的方法是刪除了頁面節點,這只會影響到本次客戶端的展現效果(一刷新又會出來),如果要實現真正的刪除(從資料庫刪除),這必須調用伺服器段的服務,可以通過以下兩種方法做到:
1 AJAX
2 Form提交
這兩種方法都需要有後台代碼的配合(java),你混淆了Javascipt與Java的關系,
另:這不是緩存,只是操作方法不對

⑶ js緩存怎樣清理

瀏覽器緩存,有時候我們需要他,因為他可以提高網站性能和瀏覽器速度,提高網站性能。但是有時候我們又不得不清除緩存,因為緩存可能誤事,出現一些錯誤的數據。像股票類網站實時更新等,這樣的網站是不要緩存的,像有的網站很少更新,有緩存還是比較好的。今天主要介紹清除緩存的幾種方法。
清理網站緩存的幾種方法
meta方法
<METAHTTP-EQUIV="pragma"CONTENT="no-cache">
<METAHTTP-EQUIV="Cache-Control"CONTENT="no-cache,must-revalidate">
<METAHTTP-EQUIV="expires"CONTENT="0">123
清理form表單的臨時緩存
方式一:用ajax請求伺服器最新文件,並加上請求頭If-Modified-Since和Cache-Control,如下:
$.ajax({
url:'www.haorooms.com',
dataType:'json',
data:{},
beforeSend:function(xmlHttp){
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.setRequestHeader("Cache-Control","no-cache");
},
success:function(response){
//操作
}
async:false
});12345678910111213
方法二,直接用cache:false,
$.ajax({
url:'www.haorooms.com',
dataType:'json',
data:{},
cache:false,
ifModified:true,

success:function(response){
//操作
}
async:false
});123456789101112
方法三:用隨機數,隨機數也是避免緩存的一種很不錯的方法!
URL參數後加上"?ran="+Math.random();//當然這里參數ran可以任意取了
eg:
<script>
document.write("<s"+"cripttype='text/javascript'src='/js/test.js?"+Math.random()+"'></scr"+"ipt>");
</script>

其他的類似,只需在地址後加上+Math.random()
注意:因為Math.random()只能在Javascript下起作用,故只能通過Javascript的調用才可以12345678
方法四:用隨機時間,和隨機數一樣。
在URL參數後加上"?timestamp="+newDate().getTime();1
php後端清理
在服務端加header("Cache-Control:no-cache,must-revalidate");等等(如php中)1
方法五:
5、window.location.replace("WebForm1.aspx");
參數就是你要覆蓋的頁面,replace的原理就是用當前頁面替換掉replace參數指定的頁面。
這樣可以防止用戶點擊back鍵。使用的是javascript腳本,舉例如下:
a.html
以下是引用片段:
<html>
<head>
<title>a</title>
<scriptlanguage="javascript">
functionjump(){
window.location.replace("b.html");
}
</script>
</head>
<body>
<ahref="javascript:jump()">b</a>
</body>
</html>

b.html
以下是引用片段:
<html>
<head>
<title>b</title>
<scriptlanguage="javascript">
functionjump(){
window.location.replace("a.html");
}
</script>
</head>
<body>
<ahref="javascript:jump()">a</a>
</body>
</html>

⑷ 如何防止js和css緩存

解決辦法一:每次修改js或css文件後,都要手工修改那個版本號,注意:是每修改一次(哪怕僅僅是改了一個字元)都要修改版本號;
解決辦法二:如果嫌手工修改太麻煩,那可以通過程序來自動修改(用隨機數做版本號)。如果你的網站是動態的,那可以通過後台程序來改,比如ASP的:
<link rel="stylesheet" href="static/mimi/css/main.css?v=<%=rnd()%>" type="text/css"/>

PHP的:
<link rel="stylesheet" href="static/mimi/css/main.css?v=<?php echo mt_rand(); ?>" type="text/css"/>

如果是靜態網站那就要js腳本來實現了,這個稍微麻煩點,這里就不說了。
其實上述方法一和方法二的目的都是為了使每次打開的js或css的url不同,這樣瀏覽器就不會去緩存區取數據,而是直接到網站下載。
如果上述方法仍然無效,那就是你的瀏覽器的緩存機制存在問題,比如「從不檢查網頁的新版本,除非手動刷新」,這個就要你自己去設置了。

⑸ 如何清除在瀏覽器 中的js緩存文件

關於瀏覽器緩存

瀏覽器緩存,有時候我們需要他,因為他可以提高網站性能和瀏覽器速度,提高網站性能。但是有時候我們又不得不清除緩存,因為緩存可能誤事,出現一些錯誤的數據。像股票類網站實時更新等,這樣的網站是不要緩存的,像有的網站很少更新,有緩存還是比較好的。今天主要介紹清除緩存的幾種方法。

清理網站緩存的幾種方法

meta方法

?

1
2
3
4

//不緩存
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="0">

清理form表單的臨時緩存

<body onLoad="javascript:document.yourFormName.reset()">

其實form表單的緩存對於我們書寫還是有幫助的,一般情況不建議清理,但是有時候為了安全問題等,需要清理一下!

jquery ajax清除瀏覽器緩存

方式一:用ajax請求伺服器最新文件,並加上請求頭If-Modified-Since和Cache-Control,如下:

?

1
2
3
4
5
6
7
8
9
10
11
12
13

$.ajax({
url:'www.haorooms.com',
dataType:'json',
data:{},
beforeSend :function(xmlHttp){
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.setRequestHeader("Cache-Control","no-cache");
},
success:function(response){
//操作
}
async:false
});

方法二,直接用cache:false,

?

1
2
3
4
5
6
7
8
9
10
11

$.ajax({
url:'www.haorooms.com',
dataType:'json',
data:{},
cache:false,
ifModified :true ,
success:function(response){
//操作
}
async:false
});

方法三:用隨機數,隨機數也是避免緩存的一種很不錯的方法!

URL 參數後加上 "?ran=" + Math.random(); //當然這里參數 ran可以任意取了

方法四:用隨機時間,和隨機數一樣。

在 URL 參數後加上 "?timestamp=" + new Date().getTime();

用php後端清理

在服務端加 header("Cache-Control: no-cache, must-revalidate");等等(如php中)

方法五:

window.location.replace("WebForm1.aspx");

參數就是你要覆蓋的頁面,replace的原理就是用當前頁面替換掉replace參數指定的頁面。

這樣可以防止用戶點擊back鍵。使用的是javascript腳本,舉例如下:

a.html

以下是引用片段:

?

1
2
3
4
5
6
7
8
9
10
11
12
13

<html>
<head>
<title>a</title>
<script language="javascript">
function jump(){
window.location.replace("b.html");
}
</script>
</head>
<body>
<a href="javascript:jump()" rel="external nofollow" rel="external nofollow" >b</a>
</body>
</html>

b.html

以下是引用片段:

⑹ js文件緩存到本地

對js文件進行hash,每次客戶端請求的時候取回hash,如果緩存的js的hashcode與取回的hashcode不一致,則重新download腳本文件,否則不用。

⑺ javascript腳本緩存怎麼解決

禁用客戶端緩存
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如何清除IE瀏覽器緩存

一、CSS和JS為什麼帶參數(形如.css?t=與.js?t=)怎樣獲取代碼
css和js帶參數(形如.css?t=與.js?t=)
使用參數有兩種可能:
第一、腳本並不存在,而是服務端動態生成的,因此帶了個版本號,以示區別。 即上面代碼對於文件來說 等價於 但瀏覽器會認為他是 該文件的某個版本!
第二、客戶端會緩存這些css或js文件,因此每次升級了js或css文件後,改變版本號,客戶端瀏覽器就會重新下載新的js或css文件 ,刷性緩存的作用。
第二種情況最多,也可能兩種同時存在。
版本號,可以是一個隨機數,也可以是一個遞增的值,大版本小版本的方式,或者根據腳本的生成時間書寫,比如就是精確到了生成腳本的秒,而 2.3.3 就是大版本小版本的方式。
二、關於瀏覽器緩存
瀏覽器緩存,有時候我們需要他,因為他可以提高網站性能和瀏覽器速度,提高網站性能。但是有時候我們又不得不清除緩存,因為緩存可能誤事,出現一些錯誤的數據。像股票類網站實時更新等,這樣的網站是不要緩存的,像有的網站很少更新,有緩存還是比較好的。今天主要介紹清除緩存的幾種方法。
清理網站緩存的幾種方法
meta方法
<META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" CONTENT="0">123

清理form表單的臨時緩存
方式一:用ajax請求伺服器最新文件,並加上請求頭If-Modified-Since和Cache-Control,如下:
$.ajax({
url:'www.haorooms.com',
dataType:'json',
data:{},
beforeSend :function(xmlHttp){
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.setRequestHeader("Cache-Control","no-cache");
},
success:function(response){
//操作
}
async:false
});12345678910111213

方法二,直接用cache:false,
$.ajax({
url:'www.haorooms.com',
dataType:'json',
data:{},
cache:false,
ifModified :true ,

success:function(response){
//操作
}
async:false
});123456789101112

方法三:用隨機數,隨機數也是避免緩存的一種很不錯的方法!
URL 參數後加上 "?ran=" + Math.random(); //當然這里參數 ran可以任意取了eg:
<script>
document.write("<s"+"cript type='text/javascript' src='/js/test.js?"+Math.random()+"'></scr"+"ipt>");
</script>

其他的類似,只需在地址後加上+Math.random()
注意:因為Math.random() 只能在Javascript 下起作用,故只能通過Javascript的調用才可以 12345678

方法四:用隨機時間,和隨機數一樣。
在 URL 參數後加上 "?timestamp=" + new Date().getTime(); 1

用php後端清理
在服務端加 header("Cache-Control: no-cache, must-revalidate");等等(如php中)1

方法五:
5、window.location.replace("WebForm1.aspx");
參數就是你要覆蓋的頁面,replace的原理就是用當前頁面替換掉replace參數指定的頁面。
這樣可以防止用戶點擊back鍵。使用的是javascript腳本,舉例如下:
a.html
以下是引用片段:
<html>
<head>
<title>a</title>
<script language="javascript">
function jump(){
window.location.replace("b.html");
}
</script>
</head>
<body>
<a href="javascript:jump()">b</a>
</body> </html> b.html
以下是引用片段:
<html>
<head>
<title>b</title>
<script language="javascript">
function jump(){
window.location.replace("a.html");
}
</script>
</head>
<body>
<a href="javascript:jump()">a</a>
</body> </html>

轉載地址:http://www.haorooms.com/post/js_llq_hc

⑼ 用js如何在用戶本地緩存一些數據 如何實現

可以利用localStorage來儲存數據,用法也很簡單:
localStorage["key"] = "要儲存的數據";
提取出來也同樣簡單:
var x = localStorage["key"]
key是鍵名,可以自由設定。
需要注意的是,只有支持HTML5的瀏覽器才能使用localStorage

⑽ js 什麼緩存不會被app清除緩存丟失數據

js緩存不會被app清除緩存丟失數據:把瀏覽器的console打開,然後看下你瀏覽器上面的js代碼和你環境裡面寫的代碼是不是一樣的,如果是一樣的那就說明沒有緩存的,如果瀏覽器裡面的代碼是以前的版本。

如果每次請求的地址是相同的,瀏覽器就不會去連接伺服器而是去讀取緩存,這樣對於很多應用來時是非常好的,可以降低伺服器的壓力或者減少帶寬的使用。

運行模式:

已經被廣泛用於Web應用開發,常用來為網頁添加各式各樣的動態功能,為用戶提供更流暢美觀的瀏覽效果。通常JavaScript腳本是通過嵌入在HTML中來實現自身的功能的。

是一種解釋性腳本語言(代碼不進行預編譯)。

主要用來向HTML(標准通用標記語言下的一個應用)頁面添加交互行為。

可以直接嵌入HTML頁面,但寫成單獨的js文件有利於結構和行為的分離。

跨平台特性,在絕大多數瀏覽器的支持下,可以在多種平台下運行(如Windows、Linux、Mac、Android、iOS等)。

熱點內容
伺服器兩條寬頻如何疊加網速 發布:2025-01-18 08:52:17 瀏覽:730
oracle存儲過程集合 發布:2025-01-18 08:42:39 瀏覽:884
洋蔥數學緩存 發布:2025-01-18 08:38:36 瀏覽:918
電影的文件夾都是 發布:2025-01-18 08:21:49 瀏覽:835
post提交php 發布:2025-01-18 08:21:42 瀏覽:460
如何禁止寫入文件夾 發布:2025-01-18 08:21:04 瀏覽:363
360雲盤等待上傳 發布:2025-01-18 08:21:03 瀏覽:796
安卓手機怎麼設置壁紙 發布:2025-01-18 08:20:23 瀏覽:319
如何關閉密碼鎖 發布:2025-01-18 08:18:51 瀏覽:859
我的電腦ftp打不開 發布:2025-01-18 08:18:05 瀏覽:513