JavaScript метод document.getElementsByTagName()

Определение и применение

JavaScript метод document.getElementsByTagName() возвращает коллекцию всех элементов документа с указанным именем тега в виде объекта HTMLCollection. Объект HTMLCollection представляет из себя массивоподобный (итерируемый) объект, который автоматически будет обновляться при изменении документа, элементы внутри объекта располагаются в том же порядке, в каком они присутствуют в документе.

Метод getElementsByTagName() также определен в объекте Element, по этой причине он может быть вызван на любом элементе, не только на объекте document. Элемент, на котором он вызывается будет использован в качестве корневого элемента для поиска.

Поддержка браузерами

Спецификация: dom.spec.whatwg

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьapi.Document.getElementsByTagName
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
getElementsByTagName✓1✓12✓1✓5.1✓1✓18✓4✓10.1✓1✓1.0✓4.4✓1

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

JavaScript синтаксис

JavaScript
const elements = document.getElementsByTagName(tagName);

Спецификация

DOM Standard.

Значения параметров

Параметры document.getElementsByTagName()
Параметр Описание
tagName Строковое значение, представляющее имя тега элемента, который вы хотите найти в документе. Для HTML элементов в HTML документе имя перед поиском приводится к нижнему регистру. Специальная строка "*" представляет все элементы. Обязательный параметр.

Пример использования

Поиск всех элементов div в документе

Нажмите ▶, затем Нажми меня: все блоки div получат зелёную рамку, а к их тексту добавятся восклицательные знаки по номеру в коллекции.

index.html
HTML
<button data-migration-click-0="">Нажми меня</button>
<div>Первый блок</div>
<div>Второй блок</div>
<div>Третий блок</div>
main.js
JavaScript
function myFunc() {
    let blocks = document.getElementsByTagName('div')

    for (let i = 0; i < blocks.length; i++) {
        blocks[i].style.border = '1px solid green'
    }

    blocks[0].innerHTML += ' !'
    blocks[1].innerHTML += ' !!'
    blocks[2].innerHTML += ' !!!'
}

// Обработчики кнопок перенесены из HTML для запуска с CSP без inline-скриптов.
document.querySelector('[data-migration-click-0]').addEventListener('click', function () {
    myFunc()
})

В этом примере с использованием метода addEventListener() при нажатии на кнопку (HTML элемент <button>) вызываем функцию myFunc(), которая с использованием JavaScript метода document.getElementsByTagName() выбирает все элементы с определенным тегом и инициализируем переменную этим значением (массивоподобный объект HTMLCollection). После этого мы проходим циклом по всем элементам этого массивоподобного объекта и устанавливаем сплошную границу размером 1 пиксель зеленого цвета.

Кроме того добавляем текстовое содержимое каждому элементу в зависимости от его индекса в коллекции.