尝试使用setInterval每秒更改div的背景颜色。 jQuery的

时间:2013-09-15 04:38:30

标签: javascript jquery html css

我有一个数组中的颜色列表,我想创建一个遍历数组的函数,并获取与数组索引相关联的颜色,以便每秒更改div的背景。 div的颜色应该取决于数组索引的位置。

$(document).ready(function(){


var array = ["red", "blue", "yellow"];

var counter = 0;
var nextColor;

function  bgchange() {
    $(".box").css("backgroundColor", "");
    counter = (counter + 1) % array.length;
    nextColor = array[counter];

    $(".box").css("backgroundColor","'" + nextColor +"'");

}


    setInterval(bgchange, 1000)


});

我想通过使用与上面的代码类似但实际上有效的代码来完成此任务。 感谢您的帮助。

2 个答案:

答案 0 :(得分:5)

jsFiddle Demo

backgroundColor切换为background-color

function  bgchange() {
    // $(".box").css("background-color", "");  // Unnecessary command
    counter = (counter + 1) % array.length;
    nextColor = array[counter];

    $(".box").css("background-color", nextColor); // Also no need to wrap
                                                  // variables with quotes

}

答案 1 :(得分:0)

http://jsfiddle.net/hCKA8/

<div id="box">...</div>

$(document).ready(function() {  
 setInterval(function() {
    $('#box').animate( { backgroundColor: 'red' }, 1000)
    .animate( { backgroundColor: 'green' }, 1000); 
    }, 1000);

 });