ユーザーの要求に応じてダイアログボックスを開き、jQueryのload()メソッドを使用して外部ファイルをロードするページがあります。
外部ファイルにはスクリプトへのリンクが含まれており(スタンドアロンページとしても機能します)、それは問題ありません。jQueryは、スクリプトが既にロードされている場合でも、それらのスクリプトを強制的にロードします(タイムスタンプを追加します)。
これらのスクリプトを検出したときにキャッシュを許可するようにjQueryに指示する必要があります。バグレポートへの回答は、
$.ajaxSetup({ cache: true })
…これは機能しますが、将来のすべてのAJAXリクエストの設定を変更します。次のようなことを行う方法はありますか?
// Get current setting - code not valid but is what I want
var defaultCache = $.ajaxSetup("cache");
$.ajaxSetup({cache:true}); // Now set it to what I want
// do stuff…
$.ajaxSetup({cache:defaultCache}); // Set it back to the default