Как я могу отследить эти предупреждающие сообщения Firefox? - PullRequest
3 голосов
/ 11 января 2011

С тех пор, как я обновился до jQuery 1.4.4, я получал несколько новых предупреждений при запуске своих модульных тестов в Firefox 3.6.13.Вот типичный пример:

Warning: Unexpected token in attribute selector: '!'.
Source File: http://localhost/unitTests/devunitTests.html
Line: 0

Или еще более полезный:

Warning: Selector expected.
Source File: http://localhost/unitTests/ui/editors/iframe2.html?test=15
Line: 0

Веб-страница отображается хорошо, и весь мой код JavaScript, кажется, тоже работает нормально, поэтомуЯ неохотно трачу потенциально большое количество времени на копирование моего кода, чтобы отследить эти сообщения.Однако кто-нибудь может подсказать, что провоцирует предупреждения?

Ответы [ 2 ]

2 голосов
/ 11 января 2011

Скорее всего, у вас есть что-то вроде этого:

$(selectorVariable)

... и что-то еще в этом духе:

$("something[" + attributeNameVariable + "!=somethingElse]")

в обоих этих случаях ваши переменные, являющиеся пустыми, будут ошибкой, поскольку "" и "selector[!=value]" не являются допустимыми селекторами. Просто посмотрите, где вы используете переменные в селекторах, и добавьте if() проверок, чтобы они не запускались, если селектор был бы недействительным в этих случаях (иногда пустая строка в переменной просто отлично, зависит от того, где она используется) .

0 голосов
/ 11 января 2011

По сути, Firefox имеет строгие правила для javascript и будет возвращать ошибки по тривиальным вопросам, которые не влияют на выполнение кода javascript.Сверху головы определение переменных без var создаст какое-то предупреждение в консоли ошибок, хотя это совершенно нормально.Подобные методы кодирования являются нормальными для минимизации javascript, а также для того, чтобы сделать javascript в целом более быстрым и быстрым - вы заметите, что большинство из этих ошибок действительно происходят в самом jQuery.http://www.howtocreate.co.uk/strictJSFirefox.html

Возможно отключить строгие предупреждения, но, вероятно, не рекомендуется во время разработки.

TL; DR: Не беспокойтесь о них, если все работает, FF просточрезмерно суетливый.

...