5

我需要一种方法来查找一个子元素的索引号。

这是它的CSS

<div class="parent">
    <div class="son"></div>
    <div class="son"></div>
    <div class="son"></div>
    <div class="son"></div>
    <div class="son"></div>
</div>

<div class="parent">
    <div class="son"></div>
    <div class="son"></div>
    <div class="son"></div>
    <div class="son"></div>
    <div class="son"></div>
</div>

我的jquery代码是这样的

var number = $(".son").index(this);

当我使用这段代码时,它会将儿子视为一个整体。例如,当我单击第二个父类中的第二个子元素时,它会给我一个 var 编号 7。我希望子类总是从零开始计数。

4

2 回答 2

11

试试这个:

$(this).parent().find('.son').index(this)

正如其他成员提到的:

$(this).index()

完成这项工作,因为没有参数的 index() 返回元素相对于其兄弟元素的位置。

文档:

如果没有参数传递给 .index() 方法,则返回值是一个整数,指示 jQuery 对象中的第一个元素相对于其兄弟元素的位置。

于 2012-10-30T20:26:36.157 回答
2

这应该这样做:

$(this).index()

在这里试试:

http://jsfiddle.net/uKa7d/

于 2012-10-30T20:27:03.880 回答