以每两个元素为目标—Javascript/jQuery
我正在努力处理js中的一段代码 我有一个表,我想对它进行迭代,并对前两个tr做一些事情,而不是第三个和第四个tr等。为了使它更清晰,我将把它写在这里作为一个列表 假设每两个元素对应一个类。 像这样:以每两个元素为目标—Javascript/jQuery,javascript,jquery,list,Javascript,Jquery,List,我正在努力处理js中的一段代码 我有一个表,我想对它进行迭代,并对前两个tr做一些事情,而不是第三个和第四个tr等。为了使它更清晰,我将把它写在这里作为一个列表 假设每两个元素对应一个类。 像这样: <li></li> <!-- class1--> <li></li> <!-- class1--> <li></li> <!-- class2--> <li></li>
<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
元素,并使用索引
和余数运算符%
获取每个n
元素并执行一些操作
设c=1;
$(“li”)。每个(功能(i){
$(this.attr('class','class'+c).text(c)
如果((i 1)% 2=0)C++;
})
不确定您到底在做什么,但这样的循环可能会有所帮助
for(let i=0; i<list.length; i+=2){
doSomething(list[i], getSpecialParam(i/2));
doSomething(list[i+1], getSpecialParam(i/2));
}
for(设i=0;i如果需要基于配置的元素分解,请使用length=2或任何您想要的值。您将获得具有所需长度的子数组
var items=$(“li”),索引=1,长度=2;
while(items.length){
$(items.splice(0,长度)).each(function(){
$(this).addClass('class'+索引).text('class'+索引);
});
指数+=1;
};
您可以通过使用jQuery在表
元素上迭代来将类添加到元素中:
var i = 1;
var sumupi = 0;
jQuery("table tr").each(function(){
jQuery(this).addClass('class-' + i);
if (sumupi == 1) {
i++;
sumupi = 0;
}
else {
sumupi = 1;
}
});
请在JSF中共享这段代码真的不清楚,所以你想每两个循环一次,然后做什么?@maartje你添加类只是为了编写css,如果是的话,那么你在css中使用第n个子类,不需要添加类。
var i = 1;
var sumupi = 0;
jQuery("table tr").each(function(){
jQuery(this).addClass('class-' + i);
if (sumupi == 1) {
i++;
sumupi = 0;
}
else {
sumupi = 1;
}
});