Можно ли проверить мой jQuery JavaScript с помощью JSLint?
Я хотел проверить свой JavaScript с помощью JSLint. Я также использую jQuery и JSLint, кажется, очень недовольны jQuery.
Итак, если у меня есть этот код:
$(document).ready{
$("a").click(function() {
// foo
});
});
Я получаю несколько сообщений JSLint:
Ошибка:
Проблема с символом строки 1: "$" использовалась до того, как она была определена.
$(document).ready{
...
Я просмотрел параметры, но не мог понять, как сказать JSLint, что это нормально.
Если бы у меня был только один вызов jQuery в моем коде, я мог бы просто игнорировать сообщение JSLint, но в 2500 строк script было много вызовов, я не могу найти ошибки, которые я хотел бы исправить между всеми этими Сообщения.
Итак, кто-нибудь знает, как настроить JSLint таким образом, чтобы он работал с вызовами jQuery? Или есть что-то еще, что я могу использовать для проверки качества моего кода JavaScript/jQuery?
Ответы
Ответ 1
Это недействительный JavaScript, это должно быть:
$(document).ready(function() {
Итак, JSLint (соответствующим образом) жалуется на ваш синтаксис.
Если вы хотите избавиться от сообщения Implied global: $, document
, перейдите в нижнюю часть, где у него Предопределено (, разделено), и поместите jQuery, $
в это текстовое поле, затем запустите снова. Для части document
отметьте Предположите браузер в первом столбце.
Все настройки JSLint будут вставлены, поэтому вам не придется делать это каждый раз, когда вы возвращаетесь.
Ответ 2
Добавьте это в начало документа, чтобы проверить его:
/*jslint browser: true*/ /*global $*/
Ответ 3
Ник правильно говорит о вашем синтаксисе. Последняя версия jQuery (1.4.3) проходит тесты JSLint. Смотрите это сообщение в блоге: http://blog.jquery.com/2010/10/16/jQuery-143-released/