jquery - 试图找到最接近的类(class)的家长

标签 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>

现在我想从单击的按钮获取“子项”的索引。 这适用于第一组“#parent”

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

但不在第二个集合“#NextSet”中,因为#parent 中的所有 .child 元素也会添加到parents() 中。 我尝试过:

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

但是这是不对的...

最佳答案

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

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

parents() 将查找与选择器匹配的所有父项。

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

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

关于jquery - 试图找到最接近的类(class)的家长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16067121/

相关文章:

javascript - 通过 ajax 响应获取变量或使用 .load() 加载 php 页面是否更快

javascript - FancyBox/Popup 深度链接

Javascript - 将大对象文字转换为另一个对象文字

jquery - 更新现有 jQuery 对象的选项

Django:文件上传不适用于 Ajax

jquery - 填写表格后更改按钮的颜色

javascript - jQuery 错误导致 imageMapper 无法工作

javascript - 删除输入字段的内容jQuery

javascript - 将 $watch 附加到指令中的输入字段

javascript - 按元素类获取 ID