在我的應用程序中,我使用jquerytools的覆蓋效果。 正如在demo中所解釋的那樣,我正在疊加層內打開一個外部頁面。 在我的外部頁面中,我正在使用一些javascript來進行驗證等等。我的應用程序正在使用Struts2框架。在JQuery工具中使用AJAX調用緩存JS資源
我的問題是關於疊加效果的表現。在web服務器(apache)中,我使用mod_expires來讓瀏覽器緩存資源。 問題是,當打開覆蓋文件時,文件jquery-1.7.2.min.js
被緩存在所有應用程序中,但它不會被緩存,因爲它的名稱會隨着動態生成的數字字符串而變化。
例如以這種方式更改文件名:
- 主要應用:
jquery-1.7.2.min.js
- 覆蓋內部:
jquery-1.7.2.min.js?_=1386932790620
這個數字串改變每次,防止瀏覽器(Chrome)緩存資源。所以每次用戶打開覆蓋圖時,下載的jquery-1.7.2.min.js
都會降低性能。
你可以看到在所附的圖片這個問題:
緩存:
非緩存:
我想這jquerytools的疊加效應正在使用AJAX來加載外部頁面,所以問題是: 是否有一種方法可以將該數字字符串從附加到資源名稱?
還有其他的解決方案,以防止覆蓋效果每次下載javascript資源?
在源代碼中找到它並將其刪除 –
@scrowler你是什麼意思?該字符串是動態附加的,並且每次都會更改。 – Atropo
@scrowler,ehh - 猜是'?_ = xxxxxxx',因爲它是JSONP – davidkonrad