0
的情況是這樣的:動態加載的.html頁面不使用緩存JS文件
我有一個加載使用Jquery.load()子頁面的頁面:
loadMainContent: function(url, success)
{
$("#app-main").load(url, function(response, status, xhr) {
if (status == "error")
{
/* @todo Show loading error page */
console.log("Error message");
}
else
{
if (typeof success == "function")
{
success();
}
}
});
app.getSession();
}
問題是:在加載的.html文件中,我包含了一些'.js'文件,這些文件應該被緩存,但它不會被緩存。
我的谷歌瀏覽器控制檯顯示:
XHR finished loading: "http://www.cdttravel.cashmate.com.br/travel/list". jquery.min.js:4 (The sub-page that i loaded)
XHR finished loading: "http://www.cdttravel.cashmate.com.br/js/bloodhound.js?_=1395932898636". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/js/core/typeahead.js?_=1395932898637". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/js/app-travel.js?_=1395932898638". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/js/moment.js?_=1395932898639". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/js/langs.js?_=1395932898640". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/js/bootstrap-datetimepicker.min.js?_=1395932898641". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/ajax/query/session". jquery.min.js:4
XHR finished loading: "http://www.cdttravel.cashmate.com.br/ajax/travel/form/init". jquery.min.js:4
注意,所有的.js文件之後是_ = xxxxxxxxxxxxxxxxx是防止他們beeing緩存的隨機數?
但我想要在用戶瀏覽器中緩存的文件。如何刪除網址中的隨機查詢? 顯然他們是由jquery生成的,但不知道這一點。
在此先感謝!
但是使用這個解決方案,它可以緩存,我不JSONs想,對不對?有什麼辦法可以爲腳本啓用緩存嗎? –
恐怕您必須使用'.ajax'函數而不是'$ .load'來設置每個請求的緩存設置。 –