var trList = $("table tr"); //取得你要操作的tr list trList.each(function(index, tr){ var flag = index % 5; switch(flag){ case 0: $(this).css("background-color", "red"); break; case 1: $(this).css("background-color", "blue"); break; case 2: $(this).css("background-color", "green"); break; case 3: $(this).css("background-color", "pink"); break; case 4: $(this).css("background-color", "yellow"); break; default: break; } });
下面是我的代码,在每一个for语句里面添加类名。我想知道用一个for怎么实现,本人还是太菜了哈哈 var lis = document.getElementsByTagName("li"); for (var i = 0; i < lis.length; i+=5) { lis[i].className = "red"; }; for (var i = 1; i <= lis.length; i+=5) { lis[i].className = "blue"; }; for (var i = 2; i <= lis.length; i+=5) { lis[i].className = "green"; }; for (var i = 3; i <= lis.length; i+=5) { lis[i].className = "pink"; }; for (var i = 4; i <= lis.length; i+=5) { lis[i].className = "yellow"; };
var lis = document.getElementsByTagName("li"), classList = ["red","blue","green","pink","yellow"], i,len,num; for(i = 0,len = lis.length; i < len; i++) { num = i%5; lis[i].className = classList[num]; }这样的话,会好一些,把class都放在外面(甚至那个数字5都可以定义一个变量,放在外面)的一个数组中,这样如果我以后需要把class改成6个,7个或者更多更少的话,我只需要改变classList的值,和那个代替5的变量就可以了内部的逻辑就可以完全不需要考虑了。
table tr:nth-child(5n){
background-color:#aaa;
}
table tr:nth-child(5n+1){
background-color:#bbb;
}
table tr:nth-child(5n+2){
background-color:#ccc;
}
table tr:nth-child(5n+3){
background-color:#ddd;
}
table tr:nth-child(5n+4){
background-color:#eee;
}不对啊,你为啥用5个for循环呢?一个for循环难道搞不定?
trList.each(function(index, tr){
var flag = index % 5;
switch(flag){
case 0:
$(this).css("background-color", "red");
break;
case 1:
$(this).css("background-color", "blue");
break;
case 2:
$(this).css("background-color", "green");
break;
case 3:
$(this).css("background-color", "pink");
break;
case 4:
$(this).css("background-color", "yellow");
break;
default:
break;
}
});
下面是我的代码,在每一个for语句里面添加类名。我想知道用一个for怎么实现,本人还是太菜了哈哈
var lis = document.getElementsByTagName("li");
for (var i = 0; i < lis.length; i+=5) {
lis[i].className = "red";
};
for (var i = 1; i <= lis.length; i+=5) {
lis[i].className = "blue";
};
for (var i = 2; i <= lis.length; i+=5) {
lis[i].className = "green";
};
for (var i = 3; i <= lis.length; i+=5) {
lis[i].className = "pink";
};
for (var i = 4; i <= lis.length; i+=5) {
lis[i].className = "yellow";
};
classList = ["red","blue","green","pink","yellow"],
i,len,num;
for(i = 0,len = lis.length; i < len; i++) {
num = i%5;
lis[i].className = classList[num];
}这样的话,会好一些,把class都放在外面(甚至那个数字5都可以定义一个变量,放在外面)的一个数组中,这样如果我以后需要把class改成6个,7个或者更多更少的话,我只需要改变classList的值,和那个代替5的变量就可以了内部的逻辑就可以完全不需要考虑了。
<tr><td>1</td><td>1</td></tr>
<tr><td>2</td><td>2</td></tr>
<tr><td>3</td><td>3</td></tr>
<tr><td>4</td><td>4</td></tr>
<tr><td>5</td><td>5</td></tr>
<tr><td>6</td><td>6</td></tr>
<tr><td>7</td><td>7</td></tr>
<tr><td>8</td><td>8</td></tr>
<tr><td>9</td><td>9</td></tr>
<tr><td>10</td><td>10</td></tr>
</table>
<script type="text/javascript">
var tr = document.getElementsByTagName("tr"),color = ["red","blue","green","pink","yellow"];
for(var i=tr.length;i--;)tr[i].style.backgroundColor = color[i%5];
</script>