HTML 5 DOM は、操作を便利にするためにコレクションやリストなどの複雑なデータ型を定義します。 HTML 4 DOM と比較して、HTML 5 DOM には HTMLCollection、DOMTokenList、DOMStringMap、HTMLAllCollection、HTMLFormControlsCollection などが追加されています。
1. HTMLCollection、HTMLAllCollection、および HTMLFormControlsCollection
3 つのインターフェイスは、一連の要素で構成されるリストを表すために使用されます。 HTMLAllCollection と HTMLFormControlsCollection はどちらも HTMLCollection インターフェイスから継承し、HTMLCollection インターフェイスで定義されたnamedItem() メソッドを書き換えます。 DOM 注 (1): HTMLDocument インターフェイスでは、 document.forms (/images/embeds など) を使用して HTMLCollection オブジェクトを返し、 document.all は HTMLAllCollection オブジェクトを返し、 document.forms.elements は HTMLFormControlsCollection オブジェクトを返します。フォーム内のすべてのフォーム要素。
データ型 | 説明 | |
long | 読み取り専用。コレクション内の要素の数を返します。 3 つのインターフェイスにはすべてこの属性があります | |
object | 1. インデックスに従ってコレクション内の要素を取得します。 HTMLCollection | 2 で定義されています。HTMLCollection には次の同等のものがあります: document.forms(0)<=>document.forms[0]<=>document.forms.item(0) |
HTMLAllCollection | タグ名に基づいて要素を取得します。 HTMLAllCollection で定義されています | |
object | name または id 属性に基づいてコレクション内の要素を取得します。 違いは次のとおりです: | 1. HTMLCollection では、最初に名前に基づいて検索し、次に名前に基づいて検索します。 ID に基づいて、最初に一致した要素のみを返します。一致する要素がない場合は null が返されます。次の同等のものが存在します:document.forms['formname']<=>document.forms('formname')<=>document.forms.namedItem('formname') 3. HTMLFormControlsCollection では、一致する要素が複数ある場合は RadioNodeList オブジェクトが返され、一致する要素が 1 つしかない場合はその要素が返されます。
|
2. HTMLOptionsCollection インターフェイス
このインターフェイスは、HTMLCollection とは異なり、具体的にはオプション要素のリストを返し、length 属性とnamedItem() メソッドをオーバーライドします。 HTMLSelectElement.options プロパティによって返されるデータ型は HTMLOptionsCollection です。
データ型 | 説明 | |
long | 読み取りおよび書き込み可能。属性値がオプション要素の実際の数より大きい場合、HTMLSelectElement は空のオプション要素を自動的に追加します | 属性値がオプション要素の実際の数より小さい場合、HTMLSelectElement は冗長なオプション要素を自動的に削除します |
void | オプション要素を挿入 | |
object | 名前またはIDに基づいてコレクション内の要素を取得 | |
void | オプション要素を削除する |
三、DOMTokenList および DOMSettableTokenList
DOMTokenList は、スペースで区切られた一連の識別子を表します。 DOM 注 (3): Element インターフェイスと HTMLElement インターフェイスでは、HTMLElement.classList 属性によって返されるデータ型は DOMTokenList です。 DOMSettableTokenList は DOMTokenList を継承しており、唯一の違いは value 属性の追加です。 HTMLLinkElement.size によって返されるデータ型は DOMSettableTokenList です。
データ型 | 説明 | |
long | コレクション内の識別子の数 | |
DOMString | DOMTokenList 値を取得または設定します | |
void | ロゴを挿入 | |
boolean | ロゴが含まれているかどうかを判断 | |
void | ロゴを削除 | |
object | インデックスに基づいて識別子を取得 | |
boolean | 識別子が存在する場合は削除、存在しない場合は追加 | |
DOM文字列 | オブジェクトの文字列形式を返します |