--- title: Element.getElementsByClassName() slug: Web/API/Element/getElementsByClassName tags: - API - Класс - Коллекция - Элемент translation_of: Web/API/Element/getElementsByClassName ---
{{APIRef("DOM")}}
Element.getElementsByClassName()
метод возвращает объект {{domxref("HTMLCollection")}}, содержащий в себе все дочерние элементы, которые имеют заданные имена классов. Если вызван на объекте document, будут возвращены все элементы, содержащиеся в документе.
Так же, как метод {{domxref("Document.getElementsByClassName", "Document.getElementsByClassName()")}} действует на весь документ; это вернёт элементы, которые являются потомками корневого элемента, содержащие в себе указанные классы.
Syntax
var elements = element.getElementsByClassName(names);
Получить все элементы с классом test:
element.getElementsByClassName('test');
Получить все элементы с классами test и red:
element.getElementsByClassName('red test');
Получить все элементы с классом test, которые находятся в элементе с id main:
document.getElementById('main').getElementsByClassName('test');
Мы так же можем использовать все методы из {{jsxref("Array.prototype")}} на любом {{ domxref("HTMLCollection") }} путём передачи HTMLCollection
в метод как значение this. Так мы найдём все {{HTMLElement("div")}} элементы, которые имеют класс test:
var testElements = document.getElementsByClassName('test'); var testDivs = Array.prototype.filter.call(testElements, function(testElement){ return testElement.nodeName === 'div'; });
Specification | Status | Comment |
---|---|---|
{{SpecName('DOM WHATWG', '#dom-element-getelementsbyclassname', 'Element.getElementsByClassName()')}} | {{Spec2('DOM WHATWG')}} | Initial definition |
{{Compat}}