javascript - 使用 jQuery 找到 child 的索引?

标签 javascript jquery html

如果我有这样的 html 结构:

<div id="parent">
 <div class="child first">
   <div class="sub-child"></div>
 </div>

 <div class="child second">
   <div class="sub-child"></div>
 </div>

 <div class="child third">
   <div class="sub-child"></div>
 </div>
</div>

我有一个通过 ($('#parent.child')).click() 定义的点击处理程序然后我点击类为 second 的 div (first, second, third 只是添加了类以使演示更清晰)是否有一种简单的方法来获得数字 1,因为它是第二个 child ? (基于 0 的索引)?

类似于 $(this).index

最佳答案

看看 jQuery API。你建议的方法,index , 完全正确:

$('#parent .child').click(function() {
    var index = $(this).index();
});

来自文档:

If no argument is passed to the .index() method, the return value is an integer indicating the position of the first element within the jQuery object relative to its sibling elements.

另请注意,我已根据您的示例对选择器进行了轻微更改。不过,我猜那只是您问题中的错字。 #parent.child 将查找 ID 为“parent”且类为“child”的元素,但实际上您希望 #parent.child(注意空格)查找属于 ID 为“parent”的元素的后代的类为“child”的元素。

关于javascript - 使用 jQuery 找到 child 的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10460815/

相关文章:

javascript - 当用作对象键时,为什么 JavaScript 会将一个字符串数组转换为字符串?

jquery - 有没有办法 jQuery .load() 仅当数据不同时才更新 <div> ?

javascript - AJAX 响应需要转换为 blob

javascript - 触发选项卡索引开关时是否会触发 JavaScript 事件? (TABINDEX 不适用于 IFRAME 中的输入)

javascript - 将用户对象传递给组件模式

javascript - 通过单击导航菜单中的链接将类添加到 li

javascript - 当用户关闭浏览器时 session 关闭时,我可以立即将信息打印到数据库吗?

html - 第一个子元素的CSS选择器

jquery - 限制数字的html5模式

javascript - 如何在页面刷新时正确编写 jQuery overscroll 代码以保存 div?