2011-02-04 88 views
1
<script type="text/javascript" src="main.js"></script> 

如果這是在我的頁面頁面,幷包含在所有pages.My的問題是,當main.js中有任何更改用戶必須刷新他的瀏覽器緩存。這如果我們使用刷新html js頁面

<script type="text/javascript" src="main.js?1"></script> 

用戶將獲得最新的變化,而不在main.js變化再次刷新cache.If變化ismade有一個像

<script type="text/javascript" src="main.js?sumnumber"></script> 

我的問題作出的是,有任何通用的方式來做這個

+0

正確的方式做到這一點,是讓服務器返回正確的頭:http://www.mnot.net/cache_docs/ – RoToRa 2011-02-04 10:08:12

回答

2

你可以使用Date.geTime()或者其他一些返回滴答的方法,這是緩存蕭條的常用方法。

但是,生成標籤將更加痛苦。

您當然可以在Web服務器端進行緩存,以避免您的頁面被緩存。

1

無論何時簽入源代碼,您都可以讓版本控制系統輸入版本號。

e.g CVS中可以使用$Revision$關鍵字:

<script type="text/javascript" src="myfile.js?$Revision$"></script> 
+0

如何在瀏覽器治療$修訂$? – Rajeev 2011-02-04 10:47:10

0

,如果你正在尋找從同一個瀏覽器強制重新下載每個請求,那麼你想要的網址每一次變化,例如

<script type="text/javascript"> 
    document.write('<script type="text/javascript" src="main.js?' +Math.random()+ '"></script>'); 
</script>