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コレクションに追加しています。
実行結果
上記のコードをブラウザで実行すると、次のような画面が表示されます。

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

その結果、段落のテキストの色が赤系の色(#db133a)に変わり、フォントサイズも大きく表示されることが確認できます。
-
HTML DOMのhasAttributes()メソッドとは?構文・使い方・サンプルコードを解説
HTML DOMのhasAttributes()メソッドは、ある要素が属性(attribute)を1つでも持っているかどうかを判定するためのメソッドです。要素が属性を保持している場合はtrueを返し、1つも属性を持っていない場合はfalseを返します。また、このメソッドを要素ノード以外のノードに対して呼び出した場合、戻り値は常にfalseになるという特徴があります。 構文 hasAttributes()メソッドの基本構文は以下のとおりです。 node.hasAttributes() 引数は不要で、対象となるノードに対して直接呼び出すだけで、真偽値(Boolean)が返されます。 使用例 ここで
-
HTML DOMのfocus()メソッドとは?基本構文と使い方を実例付きで解説
HTML DOMのfocus()メソッドは、指定したHTML要素にフォーカスを設定するために使用されるメソッドです。ただし、すべてのHTML要素にフォーカスを適用できるわけではありません。たとえば、<p>タグのようにフォーカスを受け付けない要素も存在します。また、要素からフォーカスを解除したい場合は、blur()メソッドを使用します。 focus()メソッドの主な活用シーン ページ読み込み時やフォーム表示時に、最初の入力欄へ自動的にカーソルを合わせる バリデーションエラーが発生した際に、該当する入力フィールドへフォーカスを移動する モーダルウィンドウを開いたときに、特定のボタンや