--- title: Element.getElementsByClassName() slug: Web/API/Element/getElementsByClassName translation_of: Web/API/Element/getElementsByClassName ---

{{APIRef("DOM")}}

El método Element.getElementsByClassName() retorna una {{domxref("HTMLCollection")}} "viva" conteniendo todos los elementos hijos que tienen todos los nombres de clase dados. Cuando se llama en el objeto document, se realiza la búsqueda en el documento completo, incluyendo el nodo raíz.

De forma similar, el método {{domxref("Document.getElementsByClassName", "Document.getElementsByClassName()")}} actúa en todo el documento; retornará los elementos que sean descendientes del documento raiz especificado que tengan los nombres de clase dados.

Sintaxis

var elements = element.getElementsByClassName(names);

Ejemplo

Obtiene todos los elementos que tienen una clase test:

element.getElementsByClassName('test');

Obtiene todos los elementos que tienen tanto la clase red como test:

element.getElementsByClassName('red test');

Obtiene todos los elementos que tienen la clase of test, dentro de un elemento que tiene el id main:

document.getElementById('main').getElementsByClassName('test');

Podemos también usar métodos de  {{jsxref("Array.prototype")}} en cualquier {{ domxref("HTMLCollection") }} pasando el HTMLCollection como el valor this del método. Aquí encontramos todos los elementos {{HTMLElement("div")}} que tienen una clase test:

var testElements = document.getElementsByClassName('test');
var testDivs = Array.prototype.filter.call(testElements, function(testElement){
    return testElement.nodeName === 'div';
});

Especificaciones

Especificación Estado Observaciones
{{SpecName('DOM WHATWG', '#dom-element-getelementsbyclassname', 'Element.getElementsByClassName()')}} {{Spec2('DOM WHATWG')}} Definición inicial

Compatibilidad con navegadores

{{ CompatibilityTable() }}

Prestación Chrome Firefox (Gecko) Internet Explorer Opera Safari
Soporte básico {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} [1] 9 {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} [2]
Prestación Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Soporte básico {{ CompatUnknown() }} {{ CompatUnknown() }} [1] {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}

[1] Anteriormente a Firefox 19, este método retornaba una {{domxref("NodeList")}}; se cambió para reflejar el cambio en la especificación.

[2] Safari en iOS 8 y OS X 10.10 retorna una {{domxref("NodeList")}}.