使用 jquery 每 3 ul 应用不同的 css 类
我有很多 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>);
}
I have a lot of li's and I am looping through them and wrapping in groups of 5 but I need to apply a different class to every 3 groups so it looks like this
<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>
I am using this to group them
var lis = $(".leftHover ul li");
for(var i = 0; i < lis.length; i+=5) {
is.slice(i, i+5).wrapAll(<ul></ul>);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用
nth-child
选择器,例如this:这会将类添加到类
leftHover
元素下的每隔第三个。您当然可以将
3
的参数更改为您希望满足您的要求的任何内容。You can use the
nth-child
selector like this:That will add class to every third
<li>
under the element with classleftHover
. You can off course change the argument of3
to whatever you wish for your requirements.你能这样做吗..
这将以相反的方式命名它们..class2,class1,class0。使它们成为class1、class2、class3。您只需将
(i%3)
更改为(3-(i%3))
即可。Can you just do ..
That will name them the other way around .. class2, class1, class0. To get them as class1, class2, class3. You can just change
(i%3)
to(3-(i%3))
.