将随机颜色单独应用于类元素?

时间:2009-10-08 01:24:08

标签: javascript jquery css

我的目标是每个div都有一个“main”类,有一个随机的背景颜色。我有生成随机颜色的脚本,但是,使用jquery,我似乎只能将它应用于类中的所有div。如何选择div,应用颜色,选择类中的下一个div,生成新的随机颜色,应用它并重复?这是我的代码:

$(document).ready(function() {
    var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ','
                     + (Math.floor((256-199)*Math.random()) + 200) + ','
                     + (Math.floor((256-199)*Math.random()) + 200) + ')';
    $('.main').css("background-color", hue);
});

3 个答案:

答案 0 :(得分:20)

$(document).ready(function() {
    $('.main').each(function () {
        var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ')';
        $(this).css("background-color", hue);
    });
});

答案 1 :(得分:1)

代码应该是这样的......

$(document).ready(function() {
                        $('.main').each{ Function(){
                             $(this).css("background-color", hue); };
                        };
                });

Bah-对不起这个错误。为了我自己的理智而修复了最糟糕的事情......但是另一个答案让我感到震惊。

答案 2 :(得分:1)

$(document).ready(function() {
  $('.main').each(function(){
    var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + 
      (Math.floor((256-199)*Math.random()) + 200) + ',' + 
      (Math.floor((256-199)*Math.random()) + 200) + ')';
    $(this).css("background-color", hue);
  }
});