1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
---
title: HTMLCollection
slug: Web/API/HTMLCollection
translation_of: Web/API/HTMLCollection
---
<p>{{APIRef("HTML DOM")}}</p>
<p>A interface <strong><code>HTMLCollection</code></strong> representa uma coleção genérica (objeto array) de elementos (na ordem em que aparecem no documento) e oferece métodos e propriedades para selecioná-los da lista.</p>
<div class="note"><strong>Nota:</strong> Esta interface é chamada <code>HTMLCollection</code> por razões históricas (antes do DOM4, coleções implementadas por esta interface somente podiam ter elementos HTML).</div>
<p>Uma coleção <code>HTMLCollection</code> de um HTML DOM está linkada com o documento; ela será automaticamente atualizada quando o documento for modificado.</p>
<h2 id="Propriedades">Propriedades</h2>
<dl>
<dt>{{domxref("HTMLCollection.length")}} {{readonlyInline}}</dt>
<dd>Retorna o número de itens da coleção.</dd>
</dl>
<h2 id="Métodos">Métodos</h2>
<dl>
<dt>{{domxref("HTMLCollection.item()")}}</dt>
<dd>Retorna um nó especificado por <code>index</code> da lista. o primeiro index da lista é 0. Retorna <code>null</code> se <code>index</code> não existir na lista.</dd>
<dt>{{domxref("HTMLCollection.namedItem()")}}</dt>
<dd>Retorna o nó especificado pelo ID ou, caso não tenha ID, o item cuja propriedade <code>name</code> seja igual à pesquisa. Pesquisa por <code style="font-style: normal;">name</code> só é feita em último caso, somente em HTML, e somente se os elementos referenciados suportarem o atributo <code>name</code>. Retorna <code>null</code> se nenhum nó corresponder ao nome pesquisado.</dd>
</dl>
<h2 id="Uso_no_JavaScript">Uso no JavaScript</h2>
<p><code>HTMLCollection </code>expõe seus membros diretamente como propriedades, tanto por nome quanto por índice. IDs HTML podem conter : e . como caracteres válidos, o que fará necessária a utilização de colchetes para acessar as propriedades. Atualmente HTMLCollection não reconhece IDs puramente numéricos, o que pode causar conflitos com acesso em formato array, apesar do HTML5 os permitir.</p>
<p>Por exemplo, assumindo que há um elemento <code><form></code> no documento e seu <code>id</code> é <code>"myForm"</code>:</p>
<pre class="brush:js">var elem1, elem2;
// document.forms é um HTMLCollection
elem1 = document.forms[0];
elem2 = document.forms.item(0);
alert(elem1 === elem2); // exibe: "true"
elem1 = document.forms.myForm;
elem2 = document.forms.namedItem("myForm");
alert(elem1 === elem2); // exibe: "true"
elem1 = document.forms["named.item.with.periods"];</pre>
<h2 id="Browser_compatibility">Compatibilidade com navegadores</h2>
<p>Diferentes browsers se comportam de maneira diferente quando um os mais elementos são pesquisados pela string utilizada como índice (ou o argumento <span style="font-family: consolas,monaco,andale mono,monospace;">namedItem</span>). Firefox 8 se comporta como especificado no DOM 2 e no DOM 4, retornando o primeiro elemento encontrado. WebKit browsers e o Internet Explorer, neste caso, retornam outro <span style="font-family: consolas,monaco,andale mono,monospace;">HTMLCollection </span>e o Opera retorna um {{domxref("NodeList")}} com todos os elementos encontrados.</p>
<h2 id="Especificações">Especificações</h2>
<ul>
<li><a href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-75708506" title="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-75708506">DOM Level 2 HTML, Section 1.4, Miscellaneous Object Definitions</a></li>
<li><a href="http://www.w3.org/TR/domcore/#interface-htmlcollection" title="http://www.w3.org/TR/domcore/#interface-htmlcollection">DOM4: HTMLCollection</a></li>
</ul>
<h2 id="Veja_também">Veja também</h2>
<ul>
<li>{{domxref("NodeList")}}</li>
<li>{{domxref("HTMLFormControlsCollection")}}, {{domxref("HTMLOptionsCollection")}}</li>
</ul>
|