在引入的css或者js檔案後面加參數的作用

來源:互聯網
上載者:User
有時候可能會遇到js或者css檔案引用後傳遞參數:

css和js帶參數(形如.css?v=與.js?v=)

<script type=”text/javascript” src=”jb51.js?version=1.2.6″></script>

<link rel=’stylesheet’ href="http://www.php1.cn/">

使用參數有兩種可能:

第一、指令碼並不存在,而是服務端動態產生的,因此帶了個版本號碼,以示區別。 即上面代碼對於檔案來說 等價於<script type=”text/javascript” src=”jb51.js”></script> <link rel=’stylesheet’ href="http://www.php1.cn/">

第二、用戶端會緩衝這些css或js檔案,因此每次升級了js或css檔案後,改變版本號碼,用戶端瀏覽器就會重新下載新的js或css檔案 ,刷性緩衝的作用。大家可能有時候發現修改了樣式或者js,重新整理的時候不變,就是用戶端緩衝了css或者js檔案,因此加上參數還是有好處的!

第二種情況最多,也可能兩種同時存在。

版本號碼,可以是一個隨機數,也可以是一個遞增的值,大版本小版本的方式,或者根據指令碼的產生時間書寫,比如 20080727182553 就是精確到了產生指令碼的秒,而 2.3.3 就是大版本小版本的方式。

第一次升級:

<script src="aaa.js?v=1.0"></script>

第二次升級:

<script src="aaa.js?v=1.1"></script>

第三次升級:

<script src="aaa.js?v=1.2"></script>

……

其中,“v”只是一個名稱而已,隨便取。這個解決方案跟ajax請求地址後面添加隨機數的原理一樣,讓瀏覽器認為訪問不同的地址,這樣就不會使用緩衝的檔案了。

比如新浪首頁在2010年4月5日改版,只是改變CSS樣式表,可以在CSS後面,諸如.css?2010.4.5,這樣沒清理緩衝的使用者開啟新浪首頁就不會還是以前的樣子,當伺服器在讀取CSS檔案時候會重新讀取最新的2010.4.5的,

  • 相關文章

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.