无法设置未定义的' backgroundColor'

时间:2018-05-16 22:28:52

标签: javascript classname

我使用{'a': [1, 2, 3, 4], 'b': [5, 8, 9, 0], 'c': [5, 6, 9], 'd': [10, 14, 13]} 更改具有指定类名的多个元素之一的背景颜色。

我在标题中有错误消息,我找不到任何错误,如果有错误请发现:

document.getElementsByClassName

3 个答案:

答案 0 :(得分:1)

尝试循环使用元素。

var elems = document.getElementsByClassName('dot');
for(var i = 0; i < elems.length; i++) {
    elems[i].style.backgroundColor = ‘black’
}

答案 1 :(得分:0)

getElementsByClassName会返回HTMLCollection。您需要遍历它并设置集合元素的样式。目前,您正在尝试在HTMLCollection对象本身的样式引用上设置属性,但它没有。

答案 2 :(得分:0)

尝试以下方法:

function process() {
    if (dv1 === 1 && dv2 === 1 && dv3 === 1) {
    turns = 0;
    let elems = document.getElementsByClassName('dot');

    for (let elem of elems) {
        elem.style.backgroundColor = "black"
    }
  }
}