我希望这些颜色按照给定的颜色顺序循环.但它给了我所有div上只有绿色.
var colors = ["red", "blue", "green"]; for (var i = 0; i < colors.length; i++) { $("div").each(function() { $("div").css({ 'background-color': colors[i] }); }); }
HTML:
ABC
Josh Crozier.. 5
实际上,你可以简化你的代码,只是使用index
从.each()
方法.值得指出的是,.each()
方法中传递的第一个参数是index
,第二个参数是当前元素.
如果你有三个以上的项目,你也可以使用i % colors.length
,以便在第三个索引之后的数组的开头回来.
更新的示例
var colors = ["red", "blue", "green"];
$("div").each(function(i) {
$(this).css('background-color', colors[i % colors.length]);
});
A
B
C
D
E
实际上,你可以简化你的代码,只是使用index
从.each()
方法.值得指出的是,.each()
方法中传递的第一个参数是index
,第二个参数是当前元素.
如果你有三个以上的项目,你也可以使用i % colors.length
,以便在第三个索引之后的数组的开头回来.
更新的示例
var colors = ["red", "blue", "green"];
$("div").each(function(i) {
$(this).css('background-color', colors[i % colors.length]);
});
A
B
C
D
E