试图获得最近的类的父级

时间:2013-04-17 18:09:45

标签: jquery

我有一些喜欢这样的div:

<div id="parent">
  <div class="child">
    <div class="gChild">
     <button></button> 
    </div>
    <div class="gChild">
     <button></button> 
    </div>
  </div>
  <div class="child">
    <div class="gChild">
     <button></button> 
    </div>
    <div class="gChild">
     <button></button> 
    </div>
  </div>
</div>

<div id="NextSet">
  <div class="child">
    <div class="gChild">
     <button></button> 
    </div>
    <div class="gChild">
     <button></button> 
    </div>
  </div>
</div>

现在我想从点击的按钮获取'child'的索引。 这适用于第一组'#parent'

$(this).parents('.child').index();

但不是在第二组'#NextSet'中,因为来自#parent的所有.child元素也被添加到parent()中。 我试过了:

$(this).closest('.child').parent().index();

但那不对......

1 个答案:

答案 0 :(得分:2)

closest()找到匹配选择器的第一个父级,所以它只是:

$(this).closest('.child').index()

parents()会找到与选择器匹配的所有父母。

要获取所有.child元素中的索引,请传递一个集合:

$(this).closest('.child').index('.child');