Attr
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Attr
インターフェイスは要素の属性の一つをオブジェクトとして表します。多くの場合、属性値を直接文字列として取得しますが(例: Element.getAttribute()
)、一部の関数(例: Element.getAttributeNode()
)や反復処理の場面では Attr
のインスタンスを返します。
Attr
型のオブジェクトの核となる考え方は、名前と値の関連付けです。属性は名前空間の一部であることもあり、この場合、名前空間を識別する URI と、名前空間の省略形である接頭辞も持っています。
最終的に名前空間接頭辞を無視した場合はローカルとみなされ、名前空間の接頭辞がある場合はそれを含み、コロン (:
) でローカル名との間を区切った場合は修飾されているとみなされます。名前空間の外にある属性、名前空間の中にあって接頭辞が定義されていない属性、名前空間の中にあって接頭辞が定義されている属性の 3 つの場合があります。
属性 | 名前空間名 | 名前空間接頭辞 | 属性のローカル名 | 属性の修飾名 |
---|---|---|---|---|
myAttr |
なし | なし | myAttr |
myAttr |
myAttr |
mynamespace |
なし | myAttr |
myAttr |
myAttr |
mynamespace |
myns |
myAttr |
myns:myAttr |
メモ: このインターフェイスは、SVG、HTML、MathML のいずれかの要素である Element
のツリー表現に存在する属性のみを表します。例えば <table>
要素に対する HTMLTableElement
のような、その要素に関連付けられたインターフェイスのプロパティを表すことはありません。(属性とそれがどのようにプロパティに反映されるかについての詳細はこの記事を参照してください。)
インスタンスプロパティ
このインターフェイスには親インターフェイスである Node
および EventTarget
から継承したプロパティもあります。
localName
読取専用-
文字列で、属性の修飾名のローカル部分を表します。
name
読取専用-
属性の修飾名です。この属性が名前空間内にない場合は、
localName
プロパティと同じになります。 namespaceURI
読取専用-
文字列で、この属性の名前空間の URI を表します。名前空間がない場合は
null
となります。 ownerElement
読取専用-
この属性が所属する
Element
です。 prefix
読取専用-
文字列で、この属性の名前空間接頭辞を表します。接頭辞のない名前空間や名前空間が指定されていない場合は
null
となります。 specified
読取専用 非推奨-
このプロパティは常に
true
を返します。 value
-
この属性の値です。文字列で、このプロパティで設定したり取得したりすることができます。
インスタンスメソッド
このインターフェイスに固有のメソッドはありませんが、親インターフェイスである Node
および EventTarget
から継承したメソッドがあります。
仕様書
Specification |
---|
DOM Standard # interface-attr |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
- 他のノード:
CDATASection
,CharacterData
,Comment
,Document
,Element
,ProcessingInstruction
,Text