1

情况是我有 div 块。想象一下 Windows 8 Metro 风格。我想要一组颜色,每次重新加载页面时,块的颜色都会改变。

我使用 jquery 创建了一个简单的随机脚本,但是一旦页面加载,这些块是相同的颜色.. 这是我的代码

$('#block').css('background', colors[Math.floor(Math.random() * images.length)]);

你怎么看?

4

1 回答 1

0

您应该使用setInterval()方法。试试这个

$(function(){
    var colors = ["red","green","blue","yellow"];

    setInterval(function() {
           $('#block').css('background', colors[Math.floor(Math.random() * colors.length)]);
    }, 500);
});

演示

在不使用颜色数组的情况下随机获取颜色代码。您可以为颜色代码动态生成十六进制值。

$('#block').css('background', '#'+Math.floor(Math.random()*16777215).toString(16));

就多个 div 块而言,请尝试以下代码:

$(function(){
   $("div").each(function(){
      $(this).css('background','#'+Math.floor(Math.random()*16777215).toString(16));
   });
});

工作演示

祝你好运 !!

于 2012-09-29T09:40:30.367 回答