На цій сторінці взято наступне опис :
Метод getElementsByClassName () повертає колекцію всіх елементів у документі із вказаним іменем класу як об’єкт NodeList.
Об'єкт NodeList являє собою сукупність вузлів. До вузлів можна отримати доступ за номерами індексу. Індекс починається з 0.
Порада: Ви можете скористатися властивістю довжини об'єкта NodeList для визначення кількості елементів із вказаним іменем класу, після чого ви зможете переглядати всі елементи та витягувати потрібну інформацію.
Отже, як параметр getElementsByClassName
буде прийнято ім'я класу.
Якщо це ваше тіло HTML:
<div id="first" class="menuItem"></div>
<div id="second" class="menuItem"></div>
<div id="third" class="menuItem"></div>
<div id="footer"></div>
то var menuItems = document.getElementsByClassName('menuItem')
повертає колекцію (а не масив) трьох верхніх <div>
s, оскільки вони відповідають заданому імені класу.
Потім ви можете повторити <div>
колекцію цих вузлів ( у цьому випадку) за допомогою:
for (var menuItemIndex = 0 ; menuItems.length ; menuItemIndex ++) {
var currentMenuItem = menuItems[menuItemIndex];
// do stuff with currentMenuItem as a node.
}
Детальніше про відмінності між елементами та вузлами див. У цій публікації .
getElementsByClassName()
передбачає множину, тоді якgetElementById()
передбачає елемент однини елемента.