javascript - 定位每两个元素 - Javascript / jQuery
问题描述
我正在为js中的一段代码而苦苦挣扎。
我有一个表,我想迭代它并为前两个 tr 做一些事情,而不是为第三个和第四个等做一些事情。为了使它更干净,我将它写在这里作为一个列表。
假设我想为每两个元素分配一个类。像这样:
<li></li> <!-- class1-->
<li></li> <!-- class1-->
<li></li> <!-- class2-->
<li></li> <!-- class2-->
<li></li> <!-- class3-->
<li></li> <!-- class3-->
<li></li> <!-- class4-->
<li></li> <!-- class4-->
etc ..
我在考虑一个 for 循环,但我不知道如何定位每两个。我还找到了“切片”,但这似乎您可以在其他两个项目之间选择项目。我想创建一个 while 循环来更改切片中 start 和 end 的值,但想不出一个好的方法来做到这一点。
有什么东西吗?
解决方案
您可以循环li
元素并使用index
和余数运算符%
来获取每个nth
元素并执行某些操作。
let c = 1;
$("li").each(function(i) {
$(this).attr('class', 'class' + c).text(c)
if ((i - 1) % 2 == 0) c++;
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
推荐阅读
- node.js - 如何在 JavaScript 类中使用猫鼬模型
- lz4 - 如何检查 zstd 安装是否支持 lz4?
- javascript - 如何在不使用 ngx-datatable 重新渲染整个表格的情况下刷新单个单元格/行?
- laravel - 照亮\广播\广播异常404未找到
- java - 正则表达式匹配具有特定十进制数计数的行
- unit-testing - 如何使用 JSDom 对 Jest 中的自定义元素执行单元测试
- ios - 如何从按钮的 imageView 中删除缓存的 SDWebImage
- java - JavaFX NoClassDefFoundError:阶段
- c++ - 类对象的复制列表初始化是用户定义的转换吗
- html - 导航栏溢出时引导自定义文件输入错误