如何使用jQuery向第一个孩子添加课程?
如何在具有特定索引的容器上添加类元素?
我正在尝试这个应该影响第一个元素(无论如何都不起作用)
$('#resultsBox li:first-child').addClass('aaaa');
但我希望能够更改其索引容器中的任何元素的类。
EG如果我想修改index = 2的元素。
应该成为:
// Index 0 // Index 1 // Index 2
使用:第一选择器:
$('#resultsBox li:first').addClass('aaaa');
对于第三个元素选择,您可以使用each()方法: 这是jsFiddle。
$('ul li').each(function(i) { if ( i === 2 ) { $(this).addClass('aaaa'); } });
或者你可以用像Jamiec和MrThys这样的eq方法做到这一点:但是当事情变得复杂时,每种方法都会非常有用。
$('#resultsBox li').eq(2).addClass('aaaa');
实现这一目标的最简洁方法是:
$('#resultsBox li').eq(2).addClass('selected');
有关.eq方法的文档,请访问: http ://api.jquery.com/eq/
使用:first selector或:nth-child选择器。 我提到了:nth-child选择器,以防你想要将类添加到第一个以外的任何东西。 如果你愿意,你也可以使用普通CSS中的nth-child而不使用javascript
$("#resultBox li:nth-child(1)").addClass('aaa');
eq selector
$('#resultsBox li:eq(2)').addClass('aaaa');
或eq function
$('#resultsBox li').eq(2).addClass('aaaa');