Jquery使用id选择器返回一个列表

tia*_*ldt 5 javascript jquery jquery-selectors

我使用以下代码遇到jquery和selectors问题:

<div id="test"></div>
console.log($('#test'));
Run Code Online (Sandbox Code Playgroud)

这总是返回一个列表,[<div id=?"test">?</div>?]而不是单个元素.

这导致总是必须$('#test')[0]为每个操作而不是仅写$('#test').有什么想法吗?

问候

Gre*_*reg 8

Jquery不会返回HtmlElement,它返回一个jQuery对象.

jQuery对象包含一个文档对象模型(DOM)元素的集合,这些元素是从HTML字符串创建的或从文档中选择的.由于jQuery方法经常使用CSS选择器来匹配文档中的元素,因此jQuery对象中的元素集通常被称为一组"匹配元素"或"选定元素"

jQuery对象本身就像一个数组; 它有一个length属性,对象中的元素可以通过它们的数字索引[0]到[length-1]来访问.请注意,jQuery对象实际上不是Javascript Array对象,因此它没有真正的Array对象的所有方法,例如join(). http://api.jquery.com/Types/#jQuery

这是复合设计模式的一个示例

复合模式描述了一组对象,可以像对象的单个实例一样对待它们.实现此模式允许您以统一的方式处理单个对象和组合.在jQuery中,当我们在单个DOM元素或一组DOM元素上访问或执行操作时,我们可以以统一的方式处理它们.http://www.addyosmani.com/resources/essentialjsdesignpatterns/book/#designpatternsjquery