如何将多个类添加到ul列表中

时间:2010-02-16 08:25:11

标签: jquery list class addclass html-lists

如何在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中重复。真的是我的问题。

4 个答案:

答案 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();

http://api.jquery.com/prevAll/

答案 3 :(得分:0)

您可以使用.filter()方法过滤您的选择。

$('li').filter(':nth-child(n+3)').addClass('className');

现在,任何符合此条件的内容都将获得class属性。在你的例子中,第3,第4和第5 li将收到它。