2010-07-08 60 views
28

我有这样一个清单:的jQuery - 获得一个元素的索引与某一类

<li> .... </li> 
<li> .... </li> 
<li> .... </li> 
<li class="active"> .... </li> 
<li> .... </li> 

我想找出(列表中的号码)的项目与“活跃指数“类元素。 在这种情况下,索引将是4(如果我们从0开始,则为3) 我该怎么做?

回答

57

随着.index()

$('li.active').index() 

工作示例这里:

http://jsfiddle.net/EcZZL/

编辑 - 添加链接到API为.index()每尼克的建议

+0

如果选择器是'$(this).hasClass(“myClass”)'?它没有index()函数。 – SearchForKnowledge 2016-10-12 14:49:01

+0

'var g = parseInt($('div.slideIsActive')。index())+ 1;'给我'1',但是这个var index = $(this).find(“div.slideIsActive”)。index ()+ 1;'给我'0'。如何编辑以使用'this'关键字来获得'1'。 – SearchForKnowledge 2016-10-12 14:50:58

10

像这样:

var index = $("ul li.active").index(); 

.index()没有参数给出了元素相对于它的兄弟的索引,这是你在这种情况下想要的。

+1

看起来像我今天早上第一杯咖啡尼克;) – HurnsMobile 2010-07-08 14:06:07

+3

@HurnsMobile - 的确如此:)确保给出一个链接到你正在使用的适当的功能,如果可能的话,帮助未来的googlers ...更是如此''。 index()'因为它有几个不同的用途:) – 2010-07-08 14:07:26

+0

一个精确和简洁的答案。非常感激!!! – 2014-08-20 19:49:16