HTML
 Computer >> コンピューター >  >> プログラミング >> HTML

HTML DOM setNamedItem()メソッドの使い方を解説

setNamedItem()メソッドとは

HTMLドキュメントにおいて、setNamedItem()メソッドは、パラメータで指定したノードを、その名前をもとに属性ノードとして要素に設定するためのメソッドです。主にNamedNodeMapオブジェクト(要素のattributesコレクションなど)に対して使用されます。

なお、同じ名前の属性がすでに存在する場合は、既存の属性が新しいノードで置き換えられる点に注意してください。

構文

setNamedItem()メソッドの基本的な構文は以下のとおりです。

node.setNamedItem(node);

パラメータには、設定したい属性ノードを指定します。また、戻り値として置き換えられた古い属性ノードが返されます(該当する属性が存在しない場合はnullが返ります)。

使用例

ここでは、ボタンをクリックすると、setNamedItem()メソッドを使って段落要素にstyle属性を動的に設定する例を紹介します。

<!DOCTYPE html>
<html>
<head>
<style>
   html{
      height:100%;
   }
   body{
      text-align:center;
      color:#fff;
      background: linear-gradient(62deg, #FBAB7E 0%, #F7CE68 100%) center/cover no-repeat;
      height:100%;
   }
   .btn{
      background:#0197F6;
      border:none;
      height:2rem;
      border-radius:2px;
      width:50%;
      margin:2rem auto;
      display:block;
      color:#fff;
      outline:none;
      cursor:pointer;
   }
</style>
</head>
<body>
<h1>DOM setNamedItem() method Demo</h1>
<p>Hi! I'm a para element in HTML with some random text</p>
<button onclick="set()" class="btn">Set Attribute using setNamedItem() method</button>
<script>
   function set() {
      var p=document.querySelector("p");
      var attr=document.createAttribute("style");
      attr.value="color:#db133a;font-size:1.2rem;";
      p.attributes.setNamedItem(attr);
   }
</script>
</body>
</html>

このコードでは、document.createAttribute()で「style」という名前の属性ノードを作成し、値として文字色とフォントサイズを設定しています。その後、setNamedItem()メソッドによって、この属性ノードを段落要素のattributesコレクションに追加しています。

実行結果

上記のコードをブラウザで実行すると、次のような画面が表示されます。

HTML DOM setNamedItem()メソッドの使い方を解説

Set Attribute using setNamedItem() method」ボタンをクリックすると、JavaScriptが実行され、段落要素に新しいstyle属性が設定されます。

HTML DOM setNamedItem()メソッドの使い方を解説

その結果、段落のテキストの色が赤系の色(#db133a)に変わり、フォントサイズも大きく表示されることが確認できます。

  1. HTML DOMのhasAttributes()メソッドとは?構文・使い方・サンプルコードを解説

    HTML DOMのhasAttributes()メソッドは、ある要素が属性(attribute)を1つでも持っているかどうかを判定するためのメソッドです。要素が属性を保持している場合はtrueを返し、1つも属性を持っていない場合はfalseを返します。また、このメソッドを要素ノード以外のノードに対して呼び出した場合、戻り値は常にfalseになるという特徴があります。 構文 hasAttributes()メソッドの基本構文は以下のとおりです。 node.hasAttributes() 引数は不要で、対象となるノードに対して直接呼び出すだけで、真偽値(Boolean)が返されます。 使用例 ここで

  2. HTML DOMのfocus()メソッドとは?基本構文と使い方を実例付きで解説

    HTML DOMのfocus()メソッドは、指定したHTML要素にフォーカスを設定するために使用されるメソッドです。ただし、すべてのHTML要素にフォーカスを適用できるわけではありません。たとえば、<p>タグのようにフォーカスを受け付けない要素も存在します。また、要素からフォーカスを解除したい場合は、blur()メソッドを使用します。 focus()メソッドの主な活用シーン ページ読み込み時やフォーム表示時に、最初の入力欄へ自動的にカーソルを合わせる バリデーションエラーが発生した際に、該当する入力フィールドへフォーカスを移動する モーダルウィンドウを開いたときに、特定のボタンや