【发布时间】:2014-02-12 21:49:41
【问题描述】:
我在一个页面上有多个 div,我想为其分配随机背景颜色。如果可能的话,颜色不应该重复,除非我用完了颜色。我已经设法让 div 容器从数组中加载随机颜色,但是对于所有剩余的 div,颜色总是相同的。如果背景颜色已被另一个 div 使用,我可以做些什么来将背景颜色设置为不同的值?
这是我目前所拥有的(非工作)
function shuffleColors() {
var colors = ["bg-red", "bg-green", "bg-purple", "bg-blue"];
var randomColor = Math.floor(Math.random()*colors.length);
// var randomColor = colors[Math.floor(Math.random()*colors.length)];
var contentBlock = $('.content-block');
for (var i = 0; i < contentBlock.length; i++) {
if (colors[i] == colors[randomColor]) {
colors[randomColor]++
contentBlock.addClass(colors[randomColor]);
}
}
}
shuffleColors();
下面的代码显示了我如何设法选择随机背景颜色,但是所有 div 的颜色都相同
var background = ["bg-red", "bg-green", "bg-purple", "bg-blue"];
var randomColor = Math.floor(Math.random()*background.length);
$('.content-block').addClass(background[randomColor]);
【问题讨论】:
标签: javascript jquery