示例:http: //jsfiddle.net/MAane/
当点击任何列表项时,我正在计算所述列表中有多少先前元素,但我需要的是能够计算DOM中所有li项之前点击的项目(所以如果我点击了项目第二个列表中的数字2,警报将是= 5)
$("ul li").click(function(){
var x=0;
$(this).prevAll("li").each(function() {
x++;
});
alert(x);
});
Run Code Online (Sandbox Code Playgroud)
我可能会经历一个parent(),prev()等循环,但考虑到这些列表是动态的 - 所以我不是真的想要修复这个例子本身,但实际上可以通过任何DOM.
您可以使用index()它,并检查当前单击的LI元素集合中的位置:
$("ul li").on('click', function(){
var x = $("ul li").index(this);
alert(x);
});
Run Code Online (Sandbox Code Playgroud)