使用eq()和find()添加一个类

时间:2012-12-11 05:21:24

标签: javascript jquery html jquery-selectors

我在包含div中有几个div,例如:

<div id="container">

 <div class="itmeholder">
  <div class="item">
  </div>
 </div>
 <div class="itmeholder">
  <div class="item">
  </div>
 </div>
 <div class="itmeholder">
  <div class="item">
  </div>
 </div>
 <div class="itmeholder">
  <div class="item">
  </div>
 </div>

</div>

我想在第二个“item”div中添加一个类,所以我创建了:

$('#container:eq(1)').find('.item').addClass('newclass');

这不起作用。我也尝试过使用nth-child(),也无济于事。

有人能告诉我一个更好的方法吗?

5 个答案:

答案 0 :(得分:1)

您的ID选择器缺少#,还需要修改选择器。

<强> Live Demo

$('#container .itmeholder:eq(1)').find('.item').addClass('newclass');

答案 1 :(得分:1)

试试这个

$('#container').find('.item').eq(1).addClass('newclass');​

答案 2 :(得分:1)

首先,您单独定位容器:

$('#container')

然后取出它的孩子,将其限制为只有第二个孩子:

    .children(':eq(1)')

执行其余的搜索和操作:

    .find('.item')
    .addClass('newclass');

完整代码:

$('#container')
    .children(':eq(1)')
    .find('.item')
    .addClass('newclass');

答案 3 :(得分:1)

可能这就是你想要的:

$('#container').find('.item').eq(1).addClass('newClass')

答案 4 :(得分:0)

$('#container .itmeholder:eq(1)').find('.item').addClass('newclass');

首先找到内部元素子元素并使用eq查找所需项目并向其添加类