HTML要素.setAttribute() 対応: DOM Level 1(1998)
HTML要素に指定した属性を設定します。属性がすでに存在する場合は値が上書きされ、存在しない場合は新しく追加されます。
構文
element.setAttribute("属性名", "値");
引数
| 引数 | 概要 |
|---|---|
| 属性名 | 設定したい属性の名前を文字列で指定します。 |
| 値 | 属性に設定する値を文字列で指定します。 |
サンプルコード
<a id="link" href="#">リンク</a> <img id="photo" src="" alt="">
var link = document.querySelector("#link");
// 既存の属性を上書きします。
link.setAttribute("href", "https://example.com");
// 新しい属性を追加します。
link.setAttribute("target", "_blank");
link.setAttribute("data-type", "external");
// 画像のsrcを設定します。
var img = document.querySelector("#photo");
img.setAttribute("src", "/img/photo.jpg");
img.setAttribute("alt", "風景写真");
概要
『HTML要素.setAttribute()』はHTML要素の属性を設定するメソッドです。属性が存在しない場合は新規に追加され、すでに存在する場合は値が上書きされます。
属性の値を取得したい場合は『HTML要素.getAttribute()』を、削除したい場合は『removeAttribute()』を使用してください。
なお、『class』属性を操作する場合は『setAttribute("class", "...")』よりも『HTML要素.classList』を使用する方が安全です。『HTML要素.setAttribute()』で『class』を設定すると既存のクラスがすべて上書きされてしまいます。
『HTML要素.setAttribute()』はチュートリアル記事『id名で要素を特定してその属性を操作してみよう』で、より詳しく解説しています。良ければご覧下さい。
対応ブラウザ
デスクトップ
全バージョンで対応しています
全バージョンで対応しています
全バージョンで対応しています
4 以前 ×
7 以前 ×モバイル
全バージョンで対応しています
Android Browser
37 以降 ○
4 以前 ×
Chrome Android
36 以降 ○
17 以前 ×
Firefox Android
79 以降 ○
3 以前 ×記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。