31

JavaScript を JSLint でチェックしたかったのです。私もjQueryを使用していますが、JSLintはjQueryに非常に不満を持っているようです。

したがって、このコードがある場合:

$(document).ready{
    $("a").click(function() {
        // foo
    });
});

私はいくつかのJSLintメッセージを受け取っています:

エラー:

行 1 文字 1 の問題: '$' が定義される前に使用されました。

$(document).ready{

...

オプションを見てみましたが、JSLintにこれが問題ないことを伝える方法がわかりませんでした。

コードに jQuery 呼び出しが 1 つしかない場合は、JSLint メッセージを無視できますが、スクリプトの 2,500 行には多くの呼び出しがあり、これらすべてのメッセージの間に修正したいエラーが見つかりません。

では、jQuery 呼び出しで動作するように JSLint を構成する方法を知っている人はいますか? または、JavaScript/jQuery コードの品質をチェックするために使用できるものは他にありますか?

4

3 に答える 3

41

これは有効な JavaScript ではありません。次のようにする必要があります。

$(document).ready(function() {

したがって、JSLint は (適切に) 構文について不平を言うでしょう。

メッセージを取り除きたい場合は、Predefined (、separated)Implied global: $, documentがある下部に移動し、そのテキストボックスに入れてから再度実行します。この部分については、最初の列の [ブラウザーを想定する] をオンにします。jQuery, $document

すべての JSLint 設定は保持されるため、戻るたびにこれを行う必要はありません。

于 2010-11-01T17:37:22.417 に答える
21

これをドキュメントの先頭に追加して、検証します。

/*jslint browser: true*/ /*global  $*/
于 2012-05-19T07:26:20.377 に答える
0

ニックはあなたの構文について正しいです。jQuery の最新リリース (1.4.3) は、JSLint テストに合格しています。このブログ投稿を参照してください: http://blog.jquery.com/2010/10/16/jQuery-143-released/

于 2010-11-01T17:41:07.760 に答える