A seguinte descrição é retirada desta página :
O método getElementsByClassName () retorna uma coleção de todos os elementos no documento com o nome da classe especificado, como um objeto NodeList.
O objeto NodeList representa uma coleção de nós. Os nós podem ser acessados por números de índice. O índice começa em 0.
Dica: Você pode usar a propriedade length do objeto NodeList para determinar o número de elementos com um nome de classe especificado. Em seguida, você pode percorrer todos os elementos e extrair as informações desejadas.
Portanto, como parâmetro getElementsByClassName
, aceitaria um nome de classe.
Se este é o seu corpo HTML:
<div id="first" class="menuItem"></div>
<div id="second" class="menuItem"></div>
<div id="third" class="menuItem"></div>
<div id="footer"></div>
em seguida var menuItems = document.getElementsByClassName('menuItem')
, retornaria uma coleção (não uma matriz) dos 3 <div>
s superiores , pois eles correspondem ao nome da classe.
Em seguida, você pode iterar sobre essa <div>
coleção de nós com este:
for (var menuItemIndex = 0 ; menuItems.length ; menuItemIndex ++) {
var currentMenuItem = menuItems[menuItemIndex];
// do stuff with currentMenuItem as a node.
}
Consulte este post para obter mais informações sobre as diferenças entre elementos e nós.
getElementsByClassName()
implica um plural, enquantogetElementById()
implica um item de elemento singular.