1

我想使用 jQuery Lint 检查可能的 jQuery 错误。

我想在一个有效的简单脚本上尝试一下。我把 jquery lint 包括在内,将其设置为 2 级,BAM 出现 3 个错误。

jQuery(.highlightimage) special check failed

jquery.lint.js (line 100)

More info:

Selector: .highlightimage Selectors should be as specific as possible and should be "class only"

Collection: []

Location:

@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:16

@http://localhost:53402/Resources/Scripts/highlights.js:15

@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:16

@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:16 

什么?第 15 行是:

hl_elements = $(".highlightimage");

这个错误是什么意思?选择器包含 5 个元素,因此它是有效的。它尽可能具体。

它在 $(document).ready(function () { /这里是脚本/ }); 部分。

我所有的选择器都以这种方式失败。我究竟做错了什么?

我正在使用 jquery 1.6.1,它可能还不支持,但是 github 上已经有 jquery 1.6.1 的测试用例,它们工作正常。

其他错误是:

trigger(ready) called incorrectly
jquery.lint.js (line 100)

More info:
Collection: [Document localhost:53402]

Location:
@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:16
jquery.lint.js (line 115)
You passed: ["ready"]

Available signatures include:
trigger(eventType, extraParameters)
trigger(event)

我在页面加载时得到了。

每次我改变图像时,我都会得到另一个。

jQuery.removeData([object HTMLImageElement],fxqueue,true) called incorrectly
jquery.lint.js (line 100)

More info:
Location:
@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:16 
@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:18 
@http://localhost:53402/Resources/Scripts/jquery-1.6.1.min.js:18
jquery.lint.js (line 115)
You passed: [img.highlightimage /Documen..._293.png, "fxqueue", true]

Available signatures include:
jQuery.removeData(element, [name])

但是,如果我切换到 jquery 1.4.4,这最后一个不会发生。

4

1 回答 1

3

https://github.com/jamespadolsey/jQuery-Lint/blob/551c2106ac0daee95a670fb180610d09e58bb4cc/jquery.lint.js#L711的源代码说:

// 查找仅类选择器(IE6-8 性能不佳)

所以我想这就是警告的原因。如果您想使用仅限类的选择器,那么我会认为您可以忽略它。

(我假设错误文本应该说'并且不应该是“仅限类”'。)

于 2011-06-08T09:10:28.570 回答