为什么jQuery类选择器只返回一个元素?

时间:2017-06-26 23:10:02

标签: javascript jquery jquery-selectors

文档中有多个div类。

如控制台中所示,document.getElementsByClassName生成:

document.getElementsByClassName('current-pad-o')
HTMLCollection (2) = $8
0 <div class="red current-pad-o"> first value </div>
1 <div class="red current-pad-o"> second value </div>

和jquery,使用相同的类选择器生成:

$('.current-pad-o')
// (the first div only - no collection)
<div class="red current-pad-o"> first value </div>

我期望从jquery语句中收集一个集合。这些都是在Safari和Firefox中输出的。

根据jQuery Class Selector documentation,第二个选择器 选择具有给定类 的所有元素。

为什么jquery只返回一个而不是一个集合?

1 个答案:

答案 0 :(得分:4)

你没有jQuery,你正在使用document.querySelector()的调试器快捷方式。如果您使用$$('.current-pad-o'),您将获得所有这些。

要验证您没有使用jQuery,请在命令行中键入以下内容:

console.log($)

对于querySelector,您将看到:

function $(selector, [startNode]) { [Command Line API] }

对于jQuery,你会看到:

function (a,b){return new n.fn.init(a,b)}

参考:console expressions