A. 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
B. 如何用js清除緩存
瀏覽器沒有為js提供請緩存的介面
據檢測,360瀏覽器的雲中心有個清緩存的js介面,但只在指定的域名下可以調用清緩存的介面
這個要靠瀏覽器實現,目前沒有瀏覽器對外開放
js防緩存可以將請求後加上時間戳,這樣就不會讀緩存的內容
頁面級別防緩存一般用http頭或meta
C. js清理手機緩存
在JavaScript中清除手機緩存的方法並不是直接使用JavaScript代碼就能完成的,因為JavaScript自身不具備清除緩存的能力,需廳扮要通過一些特定的API來實現。
可以通過以下步驟清除手機緩存:
1. 使用HTML5中的應用程序緩存(Application Cache)來緩存部分頁面和資源文件,當然,緩存的數據也可以隨時被清除。
2. 使用瀏覽器提供的緩存清除API。不同的瀏宴伏斗覽器提供不同的API來清除緩存,例如Chrome瀏覽器提供了chrome.browsingData.clear API介面,可以通過該介面來清除瀏晌磨覽器緩存。
需要注意的是,清除緩存會導致部分數據丟失,同時清除緩存的方法也因不同的瀏覽器和操作系統而異,所以在具體實現時要仔細查看相關文檔並謹慎操作。
D. 如何清除在瀏覽器 中的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
以下是引用片段:
E. 能用JS或者前端的什麼方法實現清除瀏覽器緩存嗎
可以用JS實現清除瀏覽器緩存,解決方法如下:
1、在靜態頁面也就是以.html,.jsp,.aspx,.php結尾的文件中在<dead></head>中加入以下代碼。
注意事項:
JavaScriptJavaScript基於對象和事件驅動並具有相對安全性的客戶端腳本語言。也是一種廣泛用於客戶端Web開發的腳本語言,常用來給HTML網頁添加動態功能,比如響應用戶的各種操作。
F. 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()">
G. js緩存問題怎麼解決
有時候在更改js文件後,頁面並沒有及時顯示出來,可能由於修改的文件不對,或者存在緩存問題。
面對的緩存問題有兩個:
一是頁面引入的js文件緩存。
二是js請求後台的緩存。
解決方法:
對於第一種情況,有兩種處理方式:1、可以在頁面引入的js文件後面增加日趨,如果不經常改動的文件,可以在每次改動後修改後綴。<script type="text/javascript" src="scripts/jquery-1.5.2.min.js?version=1"></script>
2、修改js文件的名字,如<script type="text/javascript" src="scripts/jquery.js"></script>
對於第二種情況,一般的處理方式是在請求的路徑後面加上毫秒值,這樣每次請求的路徑都不一樣,但是對於後台來說都是一樣的,用來欺騙瀏覽器,進行實時請求,不調用瀏覽器緩存。
H. js 什麼緩存不會被app清除緩存丟失數據
js緩存不前耐會被app清除緩存丟失數據:把瀏覽器的console打開,然後看下你瀏覽器上面友帶的js代碼和你環境裡面寫的代碼是不是一樣的,如果是一樣的那就說明沒有緩存的,如果瀏覽器裡面的代碼是以前的版本。
如果每次請求的地址是相同的,瀏覽器就不會去連接伺服器而是去讀取緩存,這樣對於很多應用來時是非常好的,可以降低伺服器的壓力或者減少帶寬的使用。
運行模式:
已經被廣泛用於Web應用開發,常用來為網頁添加各式各樣的動態功能,為用戶提供更流暢美觀的瀏覽效果。通常JavaScript腳本是通過嵌入在HTML中來實現自身的功能的。
是一種解釋慧告春性腳本語言(代碼不進行預編譯)。
主要用來向HTML(標准通用標記語言下的一個應用)頁面添加交互行為。
可以直接嵌入HTML頁面,但寫成單獨的js文件有利於結構和行為的分離。
跨平台特性,在絕大多數瀏覽器的支持下,可以在多種平台下運行(如Windows、Linux、Mac、Android、iOS等)。