得到具有类和递增的li的索引

时间:2010-10-12 16:48:20

标签: jquery indexing

我一直在使用hasClass,is(),if then等。

我想要做的是点击“btn”,查看li列表,找到具有“on”类的那个并获取其索引值。根据该值,运行函数x,将类“on”添加到下一个li并从当前li中删除该类。

我想避免使用if条件链

对每个索引值进行比较

我想我只是混合了太多的选择器和方法。我在这里发布的任何代码都可能比那个问题更难阅读!

感谢那些可能得到我想要的人!

2 个答案:

答案 0 :(得分:5)

如果您正在使用jQuery 1.4+,则可以使用不带参数的.index()来获取其兄弟姐妹中元素的索引,如下所示:

var i = $("li.on").index();

您可以使用normal traversal methods来完成其余工作,例如将课程向下移动一个:

$("li.on").removeClass("on").next().addClass("on");

答案 1 :(得分:1)

您也可以尝试:

var current = $('ul.ulClass').find('li.on'); // select current on li
current.removeClass('on');                   // Remove on from current
current.next().addClass('on');               // Add on to next 

Demo