为什么我收到错误“canvas.setAttribute不是函数”

时间:2016-12-20 08:59:06

标签: javascript

当我使用

时,为什么我收到错误“canvas.setAttribute不是函数”

document.getElementsByClassName("canvas");

但更改为

document.getElementById("canvas1");

它工作正常。

代码:

(function setCanvas() {
    var canvas = document.getElementsByClassName("canvas");
    var x = 250;
    var y = 250;
    // set width and height of canvas
    canvas.setAttribute("style", "height:" + x + "px;" + " width:" + y + "px;");

    console.log("canvas width " + y);
    console.log("canvas height " + x);
}());

2 个答案:

答案 0 :(得分:3)

getElementsByClassName会返回元素的列表,而不是单个元素。

答案 1 :(得分:1)

getElementByClassName返回数组类型;使用此代码:

 $('#act1').change(function(){
        if($(this).val() == '1'){
            $('#actDiv1').css('background-color', 'green');
        }else{
            $('#actDiv1').css('background-color', 'red');
        }
 });
 $('#act2').change(function(){
        if($(this).val() == '1'){
            $('#actDiv2').css('background-color', 'green');
        }else{
            $('#actDiv2').css('background-color', 'red');
        }
 });