HTML DOM Attrオブジェクト

Attr オブジェクト

HTML DOMでは、Attr オブジェクトを表します。 HTML 属性

HTML 属性は常に HTML 要素

NamedNodeMap

HTML DOMでは、NamedNodeMap オブジェクト要素属性ノードの無序集合を表します。

言い換えれば:NamedNodeMap は Attr オブジェクトのリストを持っています。

NamedNodeMap はノード数を返す length 属性

名前またはインデックス番号でノードにアクセスできます。インデックスは0から始まります。

Attribute 属性

属性 説明
isId 廃止されています。
name 属性の名前を返します。
value 属性の値を設定または返します。
specified 属性が指定されている場合 true、そうでない場合は false を返します。

NamedNodeMap 属性とメソッド

メソッド 説明
getNamedItem() NamedNodeMap から属性ノードを返します(名前で指定)。
item() NamedNodeMap から属性ノードを返します(インデックスで指定)。
length NamedNodeMap 内の属性の数を返します。
removeNamedItem() 属性(ノード)を削除する
setNamedItem() 属性(ノード)の名前で設定する

DOM 4 警告!

W3C DOM Core では、Attr (属性) オブジェクトは Node オブジェクトからすべての属性やメソッドを継承します。

DOM 4 では、Attr オブジェクトは Node から継承されなくなりました。

将来的コードの安全性を確保するために、属性オブジェクト上でノードオブジェクトの属性やメソッドを使用することを避けるべきです:

属性 / メソッド 避けたい理由
attr.appendChild() 属性には子ノードがありません。
attr.attributes 属性には属性がありません。
attr.baseURI document.baseURI で代用してください。
attr.childNodes 属性には子ノードがありません。
attr.cloneNode() attr.value で代用してください。
attr.firstChild 属性には子ノードがありません。
attr.hasAttributes() 属性には属性がありません。
attr.hasChildNodes 属性には子ノードがありません。
attr.insertBefore() 属性には子ノードがありません。
attr.isEqualNode() 意味がありません。
attr.isSameNode() 意味がありません。
attr.isSupported() 常に true です。
attr.lastChild 属性には子ノードがありません。
attr.nextSibling 属性には同階層のノードがありません。
attr.nodeName attr.name で代用してください。
attr.nodeType 常に 2 (ATTRIBUTE_NODE) です。
attr.nodeValue attr.value で代用してください。
attr.normalize() 属性は正規化できません。
attr.ownerDocument 常にあなたの HTML ドキュメントです。
attr.ownerElement これは属性にアクセスするための HTML ノードです。
attr.parentNode これは属性にアクセスするための HTML ノードです。
attr.previousSibling 属性には同階層のノードがありません。
attr.removeChild 属性には子ノードがありません。
attr.replaceChild 属性には子ノードがありません。
attr.textContent attr.value で代用してください。