在随机计时器上设置随机背景颜色

时间:2018-02-18 06:11:37

标签: javascript arrays

我正在尝试使用forEach循环设置随机背景颜色,但所有div都使用相同的计时器获得相同的背景颜色。

这是codepen的链接。 https://codepen.io/McKern/pen/gvoZRp

var bgColors = [
        "#260CE8",
        "#7D1AFF",
        "#A90CE0",
        "#385EFF",
        "#0F0559",
        "#FF37EB"
    ];

    $('.box').each(function(){
        timer = setInterval( function() {
            randomBgColor = bgColors[Math.floor(Math.random() * bgColors.length)];
            randomNum = Math.floor(Math.random() * ((25-10)+1) + 10);
            box = $('.box');
            $('.box').css('backgroundColor', randomBgColor)
        }, 1000);
    });

1 个答案:

答案 0 :(得分:0)

您还可以使用jQuery.each()

中的值

并更改笔中最后一行的第一行和第三行。

$('.box').each(function(i, l){
  timer = setInterval( function() {
    randomBgColor = bgColors[Math.floor(Math.random() * 
bgColors.length)];
    randomNum = Math.floor(Math.random() * ((25-10)+1) + 10);
    box = $('.box');
    $(l).css('backgroundColor', randomBgColor)
  }, 1000);
});