JQuery ID Selector - 这是什么行为

时间:2012-09-05 21:43:26

标签: javascript jquery

根据jQuery文档

  

ID选择器

     

描述:选择具有给定id属性的单个元素。

当你有这个标记时

<div id="mydiv"></div>

你做了

alert($('#mydiv')); // displays "[Object]"

alert($('#mydiv')[0]); // displays "[HTMLDivElement]"

因为我们期待1个元素,所以数组符号的解释是什么?是什么让两者不同?

注意:我们更关心为什么我们只有一个DIV的数组/集合。我们只期望一个。

[Object] = Array {HTMLDivElement}[Object]的结构是什么?

3 个答案:

答案 0 :(得分:4)

$('#mydiv') // - &gt;显示[Object]因为它是jQuery对象。

$('#mydiv')[0] //显示[HTMLDivElement],因为它是一个DOM元素

有一个很好的解释,为什么它是一个数组https://stackoverflow.com/a/7183714/297641

答案 1 :(得分:2)

[0]下标返回对DOM元素的 naked 引用,而不是作为jQuery对象包装。

答案 2 :(得分:1)

jQuery包装集合中的选择器。 在您的情况下,您使用的是ID。但是当您使用类时,可能会出现多个引用。 请记住,这样做是为了在所有情况下保持一致。