<ul>
<li>Index 0</li>
<li>Index 1</li>
<li>Index 2</li>
</ul>
<div>
<a>Index 0</a>
<a>Index 1 (If i click this this this i want to addClass to it to LI with the same index of this )</a>
<a>Index 2</a>
</div>
答案 0 :(得分:8)
您可以为此目的调用jQuerys .index()
help 方法。它返回相对于当前节点的兄弟节点的索引。要查找具有相应索引的li node
,请使用.eq()
help
$('a').click(function() {
$('ul li').eq($(this).index()).addClass('your_new_class');
});
演示:http://www.jsfiddle.net/2rFn3/
参考您的评论
$('a').click(function() {
$('ul li').eq($(this).index()).addClass('your_new_class').siblings().removeClass('your_new_class');
});
答案 1 :(得分:4)
$("a").click(function() {
//Remove classes from other li (per comment)
$("ul li").removeClass("class");
//Now update the clicked item
var length = $(this).prevAll().length;
$("ul li:eq(" + length + ")").addClass("class");
});
答案 2 :(得分:0)
首先,你可以在div和li上添加一个id,以便更容易选择。
div#start and ul#target
$("div#start > a").bind("click dblclick",function(){
$("ul#target:nth-child("+$(this).index()+")").addClass("whatever");
});