Element インターフェイスは、HTML文書またはXML文書中の 要素 を表す。要素はそれに関連付けられた属性を持つ; Element インターフェイスは Node を継承するので、一般的な Node インターフェイスのプロパティ attributes で要素の全属性を取得・設定してよい。 Element インターフェイス上のメソッドでは名前で Attr オブジェクトを取得したり、或いは名前で属性値を取得したりする。XMLでは、属性値が実体参照を含んでもよい場合には、属性値を表す複雑な下位ツリーをできるだけ完全に検査するためには Attr オブジェクトが取得されるべきである。一方、HTMLでは、全属性が単純な文字列値を持つ場合は、属性値に直にアクセスするメソッドを 簡便性 として安全に使用できる。
Note: DOMレベル2では、 normalize メソッドは移動先の Node インターフェイスから継承する。
tagNameDOMString型, 読取専用
<elementExample id="demo">
...
</elementExample> ,
tagName は値 "elementExample" である。DOM 操作全般に言えることだが、XMLでは文字ケースが保持されることに注意。 HTML DOM では tagName では HTML 要素を正統大文字形式で返し、HTML文書ソース内の文字ケースを考慮しない。getAttribute( name )getAttributeNS( namespaceURI, localName )getAttributeNode( name )getAttributeNodeNS( namespaceURI, localName )getElementsByTagName( name )getElementsByTagNameNS( namespaceURI, localName )hasAttribute( name )与えられた名前の属性がこの要素に指定されいる場合、またデフォルト値を持つ場合は true を返し、そうでない場合は false を返す。
boolean 型。与えられた名前の属性がこの要素に指定済みであるか、デフォルト値を持つ場合は true, そうでない場合は false。
hasAttributeNS( namespaceURI, localName )removeAttribute( name )名前で属性を取り除く。削除された属性がデフォルト値を持つ場合、属性は直ちに出現し、デフォルト値と、適宜該当する名前空間URI, ローカル名, 接頭辞をを持つ。
ローカル名と名前空間URIで属性を削除するには、 removeAttributeNS メソッドを用いる。
(無し)
removeAttributeNS( namespaceURI, localName )ローカル名と名前空間URIで属性を取り除く。取り除かれる属性がデフォルト値を持つ場合、直ちに置き換えられる。置き換えられた属性は同じ名前空間URIとローカル名, 元の接頭辞を持つ。
HTML限定の実装はこのメソッドを実装する必要はない。
(無し)
removeAttributeNode( oldAttr )指定された属性ノードを取り除く。取り除かれた Attr がデフォルト値を持っていれば、直ちに置き換えられる。置き換える属性は同じ名前空間URIとローカル名を持ち、適宜元の接頭辞を持つ。
oldAttr がその要素の属性でない場合に発生。setAttribute( name, value )新しい属性を追加する。その名前の属性が要素に既に存在していれば、値はその値のパラメータに変更される。この値は単純な文字列である; それは設定されるままで解析されない。したがって任意のマークアップ (実体参照と認識される構文など) は文字通りのテキストとして扱われ、書き出しの際には実装に適切にエスケープされる必要がある。実体参照を含む属性値を割当てるためには、使用者は Attr ノードと、さらに Text ノード, EntityReference ノードを生成して適切な下位ツリーを構築し、 setAttributeNode を用いて属性の値として割当てなければならない。
修飾名と名前空間URIを持つ属性の設定には setAttributeNS メソッドを用いる。
(無し)
setAttributeNS( namespaceURI, qualifiedName, value )新しい属性を追加する。同じローカル名と名前空間を持つ属性がその要素にある場合、接頭辞は qualifiedName の接頭辞部分に変更され、 値は value パラメータに変更される。値は単純な文字列である; それは設定されるままで解析されない。したがって任意のマークアップ (実体参照と認識される構文のような) は文字通りのテキストとして扱われ、書き出しの際は実装により適切にエスケープされる必要がある。実体参照を含む属性値を割当てるには、使用者は Attr ノードと、更に Text ノート, EntityReference ノードを生成して適切な下位ツリーを形成し、 setAttributeNodeNS または setAttributeNode を用いて属性の値を割当てなければならない。
HTML限定の実装はこのメソッドを実装する必要はない。
(無し)
qualifiedName が奇形(malformed)である場合、 qualifiedName が接頭辞を持ち namespaceURI が null である場合、 qualifiedName が接頭辞 "xml" を持ち、かつ namespaceURI が "http://www.w3.org/XML/1998/namespace" ではない場合、 qualifiedName が "xmlns" であり namespaceURI が "http://www.w3.org/2000/xmlns/" ではない場合に発生。setAttributeNode( newAttr )新しい属性ノードをツ一過する。もしこの名前 (nodeName) を持つ属性が要素に既に存在すれば、それを新しいもので置き換える。
修飾名と名前空間URIを持つ新しい属性ノードを追加するには、 setAttributeNodeNS メソッドを用いる。
Attr 型。newAttr が既存の属性を置き換える場合は、置き換えられた Attr ノードを返し、そうでない場合は null を返す。
newAttr が生成された文書が、この要素が生成された文書と異なる場合に発生。newAttr が既に別の Element オブジェクトの属性である場合に発生。 Attr ノードを他の要素内で再使用するには、DOM 使用者はこれを明示的に複製しなけれならなない。setAttributeNodeNS( newAttr )新たな属性を追加する。そのローカル名と名前空間URIの属性が要素内に既に存在する場合は、それを新しいもので置き換える。
HTML限定DOM実装はこのメソッドを実装する必要がない。
Attr 型。newAttr 属性が同じ ローカル名 と 名前空間URI を持つ既存の属性を置換する場合は、置換された Attr ノードが返され、そうでない場合は null が返される。
newAttr が生成された文書が、この要素が生成された文書と異なる場合に発生。newAttr が既に別の Element オブジェクトの属性である場合に発生。 Attr ノードを他の要素内で再使用するには、DOM 使用者はこれを明示的に複製しなけれならなない。
interface Element : Node {
readonly attribute DOMString tagName;
DOMString getAttribute(in DOMString name);
void setAttribute(in DOMString name,
in DOMString value)
raises(DOMException);
void removeAttribute(in DOMString name)
raises(DOMException);
Attr getAttributeNode(in DOMString name);
Attr setAttributeNode(in Attr newAttr)
raises(DOMException);
Attr removeAttributeNode(in Attr oldAttr)
raises(DOMException);
NodeList getElementsByTagName(in DOMString name);
// Introduced in DOM Level 2:
DOMString getAttributeNS(in DOMString namespaceURI,
in DOMString localName);
// Introduced in DOM Level 2:
void setAttributeNS(in DOMString namespaceURI,
in DOMString qualifiedName,
in DOMString value)
raises(DOMException);
// Introduced in DOM Level 2:
void removeAttributeNS(in DOMString namespaceURI,
in DOMString localName)
raises(DOMException);
// Introduced in DOM Level 2:
Attr getAttributeNodeNS(in DOMString namespaceURI,
in DOMString localName);
// Introduced in DOM Level 2:
Attr setAttributeNodeNS(in Attr newAttr)
raises(DOMException);
// Introduced in DOM Level 2:
NodeList getElementsByTagNameNS(in DOMString namespaceURI,
in DOMString localName);
// Introduced in DOM Level 2:
boolean hasAttribute(in DOMString name);
// Introduced in DOM Level 2:
boolean hasAttributeNS(in DOMString namespaceURI,
in DOMString localName);
};