我有很多li并且我循环遍历它们并且以5个为一组包装但是我需要为每3个组应用不同的类,所以它看起来像这样
<ul class="class1"><li></li><li></li> <li></li><li></li><li></li></ul>
<ul class="class2"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class3"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class1"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class2"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class3"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class1"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class2"><li></li><li></li><li></li><li></li><li></li></ul>
<ul class="class3"><li></li><li></li><li></li><li></li><li></li></ul>
我用它来分组
var lis = $(".leftHover ul li");
for(var i = 0; i < lis.length; i+=5) {
is.slice(i, i+5).wrapAll(<ul></ul>);
}
答案 0 :(得分:4)
每3 ul应用不同的css类 用jquery
您可以像这样使用nth-child
选择器:
$(".leftHover ul li:nth-child(3n)").addClass('className');
这会将类添加到具有类<li>
的元素下的每个第三个leftHover
。您可以将3
的参数更改为符合您要求的任何内容。
答案 1 :(得分:1)
你能做到吗......
var lis = $(".leftHover ul li");
for(var i = 0; i < lis.length; i+=5) {
lis.slice(i, i+5).wrapAll('<ul class="class' + (i%3) + '"></ul>');
}
这将以相反的方式命名它们.. class2,class1,class0。将它们作为class1,class2,class3。您只需将(i%3)
更改为(3-(i%3))
。