HTMLCollection 對象是唯讀的,不能給它添加新元素,即使採用 JavaScript 數組語法也是如此。
對象定義描述,對象的屬性,對象的方法,對象的實例,
對象定義描述
HTML DOM 中的 HTMLCollection 是“活”的;如果基本的文檔改變時,那些改變通過所有 HTMLCollection 對象會立即顯示出來。
下面的每個項目(以及它們指定的屬性)都返回 HTMLCollection:
- Document (images, applets, links, forms, anchors)
- form (elements)
- map (areas)
- select (options)
- table (rows, tBodies)
- tableSection (rows)
- row (cells)
HTMLDocument 接口的許多屬性都是 HTMLCollection 對象,它提供了訪問諸如表單、圖像和連結等文檔元素的便捷方式。form.elements 和 select.options 都是 HTMLCollection 對象。HTMLCollection 還提供了遍歷Table 的各行以及 TableRow 的各個單元格的一種方便方法。
在上面已經提到了,HTMLCollection 對象是帶有方法的 HTML 元素的集合,用它可以通過元素在文檔中的位置或它們的 id 屬性、name 屬性獲取元素。在 JavaScript 中,HTMLCollection 對象的行為和唯讀數組一樣,可以使用 JavaScript 的方括弧,通過編號或名稱索引一個 HTMLCollection 對象,而不必調用 item() 方法和namedItem() 方法。
HTMLCollection 對象和 NodeList 對象很相似,但前者可能既能用名稱索引也能用數字索引。
對象的屬性
| 屬性 | 描述 |
|---|---|
length | 唯讀屬性,返回指示列表長度的整數(即集合中的元素數)。 |
對象的方法
| 方法 | 描述 |
|---|---|
item() | 返回集合中指定位置的元素(節點)。 |
namedItem() | 返回集合中 name 屬性或 id 屬性具有指定值的元素(節點)。 |
對象的實例
var c = document.forms;//這是 form 元素的一個 HTMLCollection 對象
var firstform = c[0];//能夠以數字數組來使用
var lastform = c[c.length-1];//length 屬性返回元素數
var address = c["address"];//能夠以關聯數組來使用
var address = c.address;//JavaScript 允許這樣的表示法
