该函数通过以下方式调用:

myChart.gChangeBarColour(1, "#000000");


这有效:

   // Changes bars colour
    this.gChangeBarColour = function(gBarID, gBarColour) {

        if (gBarID <= this.gData.length && gBarID >= 0) {

            document.getElementById("gBar" + gBarID).style.backgroundColor = '#000000';

        }

    }


但这不起作用:

// Changes bars colour
this.gChangeBarColour = function(gBarID, gBarColour) {

    if (gBarID <= this.gData.length && gBarID >= 0) {

        document.getElementById("gBar" + gBarID).style.backgroundColor = '" + gBarColour + "';

    }

}


控制台中完全没有错误!有任何想法吗?

最佳答案

您的'" + gBarColour + "'string,由包含'的单引号" + gBarColour + "分隔,然后将该值用作颜色。

您需要省略所有引号和加号:

// assign the value of gBarColour to the backgroundColor property
document.getElementById("gBar" + gBarID).style.backgroundColor = gBarColour;

关于javascript - Javascript无法设置颜色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4306181/

10-10 12:46