Javascript 为什么我不能更改元素的类?

Javascript 为什么我不能更改元素的类?,javascript,dom,Javascript,Dom,我想更改元素的类,但按类获取(不起作用)。 如果我按id选择它,它会工作。 我想用纯javascript实现它 function My(){ var a = document.getElementById('myClass'); a.className += ' red'; var b = document.getElementsByClassName('myClass'); b.className += ' red'; } My(); 返回类似数组的对象,而不是单个元素

我想更改元素的类,但按类获取(不起作用)。 如果我按id选择它,它会工作。 我想用纯javascript实现它

function My(){

  var a = document.getElementById('myClass');
  a.className += ' red';

  var b = document.getElementsByClassName('myClass');
  b.className += ' red';

}
My();
返回类似数组的对象,而不是单个元素

使用元素的
索引
,或使用
循环
将类应用于具有指定类的所有元素

函数My(){
var a=document.getElementById('myClass');
a、 类名+=‘红色’;
var b=document.getElementsByClassName('myClass');
[]forEach.调用(b,函数(el){
el.className+=‘红色’;
});
}
我的();
注意:可以用来代替
Element.className+=“CLASS_NAME”

返回类似数组的对象,而不是单个元素

使用元素的
索引
,或使用
循环
将类应用于具有指定类的所有元素

函数My(){
var a=document.getElementById('myClass');
a、 类名+=‘红色’;
var b=document.getElementsByClassName('myClass');
[]forEach.调用(b,函数(el){
el.className+=‘红色’;
});
}
我的();

注意:可以用来代替
Element.className+=“CLASS_NAME”

这是因为
getElementsByClassName
返回
类似数组的对象


您必须迭代数组或使用索引来获取对象并分配类。

这是因为
getElementsByClassName
返回
array-like-object


您必须迭代数组或使用索引来获取对象并分配类。

注意第二个方法如何表示“getElements”,注意第二个方法如何表示“getElements”