--- title: Attr slug: Web/API/Attr tags: - API - DOM translation_of: Web/API/Attr ---
この型は、DOM 要素の属性をオブジェクトとして提供します。ほとんどの DOM メソッドは、この属性を文字列として直接取得するでしょう (例: {{domxref("Element.getAttribute()")}})。しかし、特定の関数 (例: {{domxref("Element.getAttributeNode()")}}) やイテレーションを表すものには Attr 型を付与します。
{{InheritanceDiagram}}
Attr
は {{domxref("Node")}} から継承されますが、DOM4 仕様では異なります。Attr の実装を仕様に昇華する目的で、これを {{domxref("Node")}} から継承されないものに変更する作業が進められています。そのため、Attr
オブジェクト上の {{domxref("Node")}} プロパティやメソッドを使用すべきではありません。null
になります。null
になります。属性を持った要素です。
注意: DOM レベル 4 からこのプロパティは削除されました。 {{domxref("Element")}} から Attr
オブジェクトを取得でき、関連した要素を知っているという前提からでした。
{{domxref("Document.evaluate")}} により返される Attr
オブジェクトのように前提が真とはならない事例があるので、 DOM Living Standard は、プロパティを再び導入しました。
Gecko は、Gecko 7.0 {{geckoRelease("7.0")}} から非推奨注意を出力します。非推奨注意は、Gecko 49.0 {{geckoRelease("49.0")}} で再び削除されました。
true
を返します。かつては、ソースコードやスクリプトで明示的に指定された場合に true
を返し、ドキュメントの DTD で定義されたデフォルト値である場合に false
を返しました。注意: DOM レベル 3 は {{domxref("Node")}} インターフェース上にnamespaceURI
, localName
および prefix
を定義していました。DOM4 で、それらは Attr
に移動しました。
この変更は Chrome 46.0 以降、Firefox 48.0 以降で実装されています。
以下のプロパティは非推奨とされました。利用可能な場所では、適切な代わりのプロパティが提供されます。
attributes
NULL
を返します。childNodes
NULL
を返します。firstChild
NULL
を返します。isId
{{readOnlyInline}}lastChild
{{obsolete_inline(14)}}NULL
を返します。nextSibling
NULL
を返します。nodeName
nodeType
ATTRIBUTE_NODE
) を返します。nodeValue
ownerDocument
parentNode
NULL
を返します。previousSibling
NULL
を返します。schemaTypeInfo
{{obsolete_inline}} {{readOnlyInline}}specified
true
を返します。textContent
以下のメソッドは非推奨です:
appendChild()
cloneNode()
createAttribute()
createAttributeNS()
getAttributeNode()
getAttributeNodeNS()
hasAttributes()
{{obsolete_inline("21.0")}}false
を返します。hasChildNodes()
false
を返します。insertBefore()
isSupported()
isEqualNode()
normalize()
removeAttributeNode()
removeChild()
replaceChild()
setAttributeNode()
setAttributeNodeNS()
仕様書 | 状況 | コメント |
---|---|---|
{{SpecName("DOM WHATWG", "#interface-attr", "Attr")}} | {{Spec2("DOM WHATWG")}} | ownerElement プロパティを追加。 |
{{SpecName("DOM4", "#interface-attr", "Attr")}} | {{Spec2("DOM4")}} | {{domxref("Node")}} から namespaceURI 、prefix 、localName をこの API へ移動し、ownerElement 、schemaTypeInfo 、isId を削除。 |
{{SpecName("DOM3 Core", "core.html#ID-637646024", "Attr")}} | {{Spec2("DOM3 Core")}} | 初版 |
{{Compat("api.Attr")}}
[1] Chrome 45 現在、このプロパティは Node を継承しません。