jquery の load 関数を使用してロードされたページでは、含まれているすべての JavaScript ファイルに引数「_」があり、その値は現在の UNIX タイムスタンプに 3 つの追加の数値を加えた値です。
たとえば、「file.js」をインクルードすると、インクルードされる実際のファイルは「file.js?_=1378360893522」になります。
javascript ファイルのキャッシュを妨げています。この動作を停止する方法はありますか?
編集:要求されたとおり、関連するコードは次のとおりです。
index.html:
<html>
<head>
<script type="text/javascript" src="js/jquery.min.js"></script>
</head>
<body>
<div id='new-page'></div>
</body>
<script>
$(document).ready(function() {
$('#new-page').load("another-page.html");
});
</script>
</html>
別のページ.html:
<html>
<head>
<script type="text/javascript" src="js/another-js-file.js"></script>
</head>
<body>
</body>
</html>
「another-js-file.js」は「another-js-file.js?_=1378425747710」としてロードされます
2番目の編集:これは回答されました。これを読んでいる人のために、ロードコールを次のように変更しました。
$.ajax({
url: "another-page.html",
cache: true,
dataType: "html",
success: function(data){
$("#new-page").html(data);
}
});
一部の人々は、特定のプラグインがajaxSetupを介してキャッシュをfalseに設定する可能性があると述べているため、キャッシュしたいajax呼び出しの前にこれを使用する必要があるかもしれません:
$.ajaxSetup({cache:true});