如何在ul列表中添加几个类?我不想把它添加到每个li项目中,只是其中一些。
修改
我想用jQuery添加类。像这样:
<ul>
<li>something1</li>
<li>something2</li>
<li>something3</li>
<li>something4</li>
<li>something5</li>
</ul>
现在我想在第二个(第3个,第4个和第5个li元素)之后添加每个li的类。我知道如何添加课程,但我怎样才能让它在每个li中重复。真的是我的问题。
答案 0 :(得分:1)
好吧,要为li
中的每个ul
添加3个课程,您需要执行以下操作:
$("#myUl > li").addClass("class1 class2 class3");
由于您没有为要获取其他类的li
元素指定任何条件,我不得不猜测:
$("#myUl > li:even").addClass("class1 class2 class3");
这会将这三个类添加到每个其他li
(零索引数组中的偶数元素,更准确一些)。
答案 1 :(得分:1)
您的问题不够详细,但通常您会根据需要设置特定li元素的类。
例如:
<ul>
<li class="first winter thirty-one">January</li>
<li class="winter">February</li>
<li class="spring thirty-one">March</li>
<li class="spring">April</li>
<li class="spring thirty-one">May</li>
<li class="summer">June</li>
<li class="summer schools-out thirty-one">July</li>
<li class="summer schools-out thirty-one">August</li>
<li class="fall">September</li>
<li class="fall thirty-one">October</li>
<li class="fall">November</li>
<li class="last winter thirty-one">December</li>
</ul>
答案 2 :(得分:1)
有几种方法可以访问特定的元素索引。
:eq()
选择器可以访问单个索引:
$('li:eq(1)')
http://api.jquery.com/eq-selector/
.nextAll()
函数返回匹配元素集中每个元素的所有后续兄弟:
$('li:eq(2)').nextAll();
http://api.jquery.com/nextAll/
.prevAll()
以相同的方式工作,但返回之前的兄弟姐妹:
$('li:eq(2)').prevAll();
答案 3 :(得分:0)
您可以使用.filter()
方法过滤您的选择。
$('li').filter(':nth-child(n+3)').addClass('className');
现在,任何符合此条件的内容都将获得class属性。在你的例子中,第3,第4和第5 li将收到它。