当前位置 : 主页 > 网页制作 > JQuery >

如何使用selector返回jQuery对象的数组

来源:互联网 收集:自由互联 发布时间:2021-06-15
我试图从选择器中检索 jquery对象的数组,所以我不必再次重新查询它们以便稍后进行修改. 但是,当我使用代码进行测试时,我发现jquery选择器如果不查询特定元素则将数组作为html元素返回
我试图从选择器中检索 jquery对象的数组,所以我不必再次重新查询它们以便稍后进行修改.

但是,当我使用代码进行测试时,我发现jquery选择器如果不查询特定元素则将数组作为html元素返回.

//HTML
<div id='nav'>
    <div class='menu'>menu 1</div>
    <div class='menu'>menu 2</div>
    <div class='menu'>menu 3</div>
    <div class='menu'>menu 4</div>
    <div class='menu'>menu 5</div>
</div>​


//JS

//this works
$('#nav .menu:eq(0)').html('haha');

//this does not    
$('#nav .menu').get(0).html('halo w');​ 

-> Uncaught TypeError: Object #<HTMLDivElement> has no method 'html'

我的问题是为什么它返回html元素而不是jquery对象.如何从selector中检索jquery对象的数组.

这是JSFiddle示例.

http://jsfiddle.net/mochatony/K5fJu/7/

.get(i)返回DOM元素.你想要的是其中之一:

$('#nav .menu').first()
$('#nav .menu').eq(0)

有关可能的过滤器功能列表,请参见http://api.jquery.com/category/traversing/filtering/.

网友评论