2

スクリプトをロードするときにタイムスタンプを無効にします。これは、ファイルURLの後のクエリ文字列に常にタイムスタンプが含まれているためです。あなたが知っている画像を見てください。

ここに画像の説明を入力してください

オプションでAjaxも設定しましたcache: true。ここのコードを参照してください: `` js $ .ajax({url:url data:{}、type:'post'、cache:true、dataType:'json'、success:function(data、status){//ここに何か}});

and also I have set meta tag to the header of the HTML.
```html
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Pragma" content="Public">
<meta http-equiv="Cache-control" content="public">
<meta name="keywords" content="something">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">

jQueryv1.7.2を使用しています

4

3 に答える 3

3

jQueryがそれ自体を読み込もうとしている理由はわかりませんが、これは$.getScript()呼び出しに関連しているようです。

次のスニペットをできるだけ高い位置に追加することを検討できます。

$.ajaxSetup({
    cache: true
});

cache: trueあなたにを入れても何の$.ajax()影響もありません$.getScript()、そしてそれはあなたがそのスクリーンショットで見ているものです。

于 2012-08-15T01:05:19.553 に答える
1

codeIgniterについては直接よくわかりませんが、CakePHPと同じである必要があります。configなど、デバッグレベルを含むファイル名を付ける必要があります。modをデバッグするように設定すると、おそらくスクリプトに自動タイムスタンプが付けられ、エラーのスタックを異なる方法で処理します。

于 2012-08-15T00:47:22.983 に答える
1

$.ajaxPrefilter('script', function(options) {
    options.cache = true;
});

// or 

+ function($) {
    $.cachedScript = function(url, options) {
        // Allow user to set any option except for dataType, cache, and url
        options = $.extend(options || {}, {
            dataType: "script",
            cache: true,
            url: url
        });

        // Use $.ajax() since it is more flexible than $.getScript
        // Return the jqXHR object so we can chain callbacks
        return $.ajax(options);
    };
}(jQuery);

// now, you can use $.cachedScript()

ドキュメント$.getScript()を表示するために行くことができます

于 2015-05-27T03:02:17.677 に答える