使用JQuery动态更改颜色

时间:2014-07-25 17:09:59

标签: javascript jquery

下面是一个Jquery脚本,用于在(0,0,0)到(255,255,0)之间随时间改变对象的颜色。

$(document).ready(function(){
    var r = 0;
    var g = 0;
    changeColor(r, g);
});

function changeColor(r, g){
    var newColor = "(" + r + "," + g + ", 0)";

    $("p").css({"color": newColor});
    $("#diag").html(newColor);

    r+=1;
    g+=1;

    if(r <= 255 && g <= 255){
        window.setTimeout(function(){changeColor(r, g);}, 20);
    }
}

HTML是:

    <p>Hello</p>
    <div id="diag"></div>

然而,尽管函数确实执行了(通过在#diag中重复显示newColor的方式很明显),p元素的实际颜色不会改变。有没有想过为什么会这样?谢谢。

1 个答案:

答案 0 :(得分:6)

您需要更改此行var newColor = "(" + r + "," + g + ", 0)";

到这个

var newColor = "rgb(" + r + "," + g + ", 0)";