我正在尝试遍历一系列li
元素,并使用color
数组中的颜色匹配每个元素,如下所示:
var li = document.getElementsByTagName('li');
var colors = ["salmon", "teal", "orange", "grey", "blue"];
for (i=0; i < li.length; i++) {
li[i].style.backgroundColor=colors[i]
}
但是,因为颜色的长度比li元素的长度短,所以它会停止。
如何让颜色数组再次循环,直到匹配任何li元素的数量?
答案 0 :(得分:5)
var li = document.getElementsByTagName('li');
var colors = ["salmon", "teal", "orange", "grey", "blue"];
var colorsCount = colors.length;
for ( var i = 0; i < li.length; i++ ) {
li[i].style.backgroundColor = colors[ i % colorsCount ];
}
这是你的小提琴:http://jsfiddle.net/LhmgQ/1/