0

突然、Firefox のエラー コンソールに大量の警告が表示されるようになりました...これは今日の早い段階では発生していませんでしたし、大幅な変更も行っていません。エラーは常に繰り返され、毎秒約 3 ~ 4 回蓄積されます。

Warning: reference to undefined property jQuery.ajaxSettings.traditional

これは、私が含めた jQuery JavaScript ライブラリ v1.4.2 ファイルである jQuery.js の 5383 行を指しています。これは、今日追加した唯一の新しいコードです。

$(document).ready(function(){
    // search field focus and blur event handlers
    $('#search-field').focus(function() {
        if($(this).hasClass('placeHolder')){
            $(this).val('');
            $(this).removeClass('placeHolder');
            $(this).addClass('search-field');
        }
    });
    $('#search-field').blur(function() {
        if($(this).val() == '') {
            $(this).val('Search');
            $(this).addClass('placeHolder');
        }
    });
});

したがって、このコードを独自のファイルに個別に配置すると...次の警告が表示されます。

Warning: reference to undefined property E.queue

Warning: anonymous function does not always return a value
   Source File: http://localhost/jQueryChat/js/jQuery.js
   Line: 404, Column: 2
   Source Code:
        }, 

Warning: anonymous function does not always return a value
   Source File: http://localhost/jQueryChat/js/jQuery.js
   Line: 416, Column: 23
   Source Code:
        return jQuery.ready(); 

.. など。だから私はなぜこれが起こっているのか分かりません。何か案は?

更新: Firefox の about:config にjavascript.options.strict移動しfalseて、警告が表示されなくなりました。しかし、これは解決策ではないように感じます。

ありがとう、フリスト

4

4 に答える 4

1

jQuery では、警告は批判的ではないため、警告の重要性は低くなります。FireFoxabout:config設定で厳密な警告を無効にjavascript.options.strictするfalseか、エラー コンソールで警告を有効にすることができます。

いずれにせよ、それらを無効にしても、jquery-ui-1.7.2.custom.css を使用するときにいくつかの警告が表示される場合があります。

于 2011-01-25T13:33:59.650 に答える
0

私はabout:configFirefoxに行き、に目を向けるjavascript.options.strictfalse、警告は消えました。しかし、これは解決策ではないように感じます。

http://www.howtocreate.co.uk/strictJSFirefox.html

フリスト

于 2010-06-24T18:05:37.533 に答える
0

また、Firefox を再起動し、別のブラウザで JS のバグを確認して、JS エンジンが異常終了し、誤ったエラーが発生している可能性を排除することもできます。

于 2010-06-24T17:35:36.030 に答える
0

まず第一に、私はコメントを与えることができません
あなたのコードは機能します。エラーはありません。
あなたができることは、$-FUNCTION をオーバーライドすることです。

コードに追加してみて
jQuery.noConflict();

ください...

  jQuery(document).ready(function(){
    jQuery('#search-field').focus(function() {
        if(jQuery(this).hasClass('placeHolder')){
            jQuery(this).val('');
            jQuery(this).removeClass('placeHolder');
            jQuery(this).addClass('search-field');
        }
    });
    jQuery('#search-field').blur(function() {
        if(jQuery(this).val() == '') {
            jQuery(this).val('Search');
            jQuery(this).addClass('placeHolder');
        }
    });
});


他の js フレームワークまたはプラグインを使用している場合。これは役に立ちます。

乾杯

于 2010-06-24T17:38:26.403 に答える