堀北真希うさぎ
主な作品
オリジナルキャラクタのイラスト例とアニメーション動画

ページ案内

setAttributeNode()メソッド。

DOMに於いて、要素ノードの指定された属性名の属性に、属性ノードで得られる値を設定するsetAttributeNode()メソッドの解説です。

setAttributeNode()メソッド・目次。

setAttributeNode()メソッドとは。

setAttributeNode()メソッドとは、要素ノードに指定された属性名・属性値の属性を設定するメソッドです。

既に同名の属性があった場合には上書されます。

setAttribute()メソッドとの違いは、設定したい属性値をノードの形で与える事です。

特に、属性値に実体参照を含んでいる場合は、setAttribute()メソッドだと字面通りに解釈されてしまうため、実体参照ノードを含めた属性ノードを構築し、このsetAttributeNode()メソッドで与えるようにしなければなりません。

setAttributeNode()メソッドを実装するインタフェイス。

setAttributeNode()メソッドElementインタフェイスに依って実装されます。

従って、要素ノードでのみsetAttributeNode()メソッドを得る事が出来ます。

setAttributeNode()メソッドの引数と返し値。

setAttributeNode()メソッドは以下の二つの引数を取ります。

  1. 属性名
  2. 属性ノード

尚、多くのウェブブラウザ上で動作するJAVAスクリプトでは、第三引数として大文字小文字の区別をするか否かを指定しますが、在来のHTMLでは大文字小文字を区別しないため、特に問題はありません。

setAttributeNode()メソッドの返し値は、特にありません。

setAttributeNode()メソッドを使う上での注意事項。

インターネットエクスプローラでのclass属性の実装について。

インターネットエクスプローラでは、HTMLでのclass属性は className属性としております。

従って、

○○.setAttributeNode('class', △△)

とした場合、インターネットエクスプローラでは正常にclass属性を設定する事は出来ません。

このため、以下のようにする事でインターネットエクスプローラでも正常にclass属性を設定出来るようになります。

○○.setAttributeNode('class', △△);
○○.setAttributeNode('className', △△);

関連事項

要素ノードとElementインタフェイス
要素ノードと要素ノードに実装されているElementインタフェイスについて
attributesプロパティ
当該要素ノードに与えられた属性の集まりのオブジェクト
getAttribute()メソッド
指定された属性名の属性値の取得
setAttribute()メソッド
指定された属性の設定
removeAttribute()メソッド
指定された属性の除去
getAttributeNode()メソッド
指定された属性名の属性ノードの取得
removeAttributeNode()メソッド
指定された属性ノードの除去

しらぎくのウェブサイト作成入門サイトマップ



marguerite.site@gmail.com