我有一些喜欢这样的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();
但那不对......
答案 0 :(得分:2)
closest()
找到匹配选择器的第一个父级,所以它只是:
$(this).closest('.child').index()
parents()
会找到与选择器匹配的所有父母。
要获取所有.child
元素中的索引,请传递一个集合:
$(this).closest('.child').index('.child');