¿Qué devuelven los métodos querySelectorAll y getElementsBy*?
¿Funcionan getElementsByClassName
(y funciones similares como getElementsByTagName
y querySelectorAll
) igual getElementById
o devuelven una matriz de elementos?
La razón por la que pregunto es porque estoy intentando cambiar el estilo de todos los elementos usando getElementsByClassName
. Vea abajo.
//doesn't work
document.getElementsByClassName('myElement').style.size = '100px';
//works
document.getElementById('myIdElement').style.size = '100px';
Aceptado
Podrías obtener un solo elemento ejecutando
document.querySelector('.myElement').style.size = '100px';
pero funcionará para el primer elemento con la clase .myElement.
Si desea aplicar esto para todos los elementos de la clase, le sugiero que utilice
document.querySelectorAll('.myElement').forEach(function(element) {
element.style.size = '100px';
});