从一组相同的项中获取项的索引

Get index of an item from a group of identical items

本文关键字:获取 索引 一组      更新时间:2023-09-26

假设我有一组相同的HTML标签,例如:

<div id="stuff">
<span class="foo">Foo</span>
<span class="foo">Foo</span>
<span class="foo">Foo</span>
<span class="foo">Foo</span>
<span class="foo">Foo</span>
</div>

我将onclick事件附加到span中,如下所示:

$(".foo").click(function() {
    // stuff
});
在我的onclick事件中,我想获得被点击元素的索引,例如,如果我点击了3rd span,我希望索引是3。我该怎么做呢?通常,我会遍历$("#stuff")并将项目与单击的项目进行比较,但在这种情况下,它们是相同的。

使用:-

获取索引

索引相对于它的兄弟索引是从零开始的。因此,对于第三个元素,您将获得索引为2。

$(".foo").click(function() {
    alert($(this).index());
}

阅读。index()

演示

HTML

<div id="stuff">
<span class="foo">Foo</span>
<span class="foo">Foo</span>
<span class="foo">Foo</span>
<span class="foo">Foo</span>
<span class="foo">Foo</span>
</div>
Jquery

$(document).ready(function(){
    $('.foo').click(function(){
        var x = $(this).index();
        alert(x);
    });
});

working Demo http://jsfiddle.net/cse_tushar/Jj72A/

你可以这样写:

$(".foo").click(function(){
    alert(jQuery.inArray(this,$(".foo")));
});