DOM(Document Object Model)操作とは、JavaScriptなどのスクリプト言語を使ってHTMLやXMLの構造・内容・見た目を動的に変えることです。ブラウザはHTMLを読み込むと、ページの要素をツリー状(DOMツリー)にしてメモリ上に表現し、JavaScriptはそのDOMツリーを通じてページを操作します。
1. DOMの基本構造
HTML:
DOMツリー(概念図):
2. 要素の取得
Javascript
// IDで取得
const title = document.getElementById("title");
// クラスで取得(複数要素)
const messages = document.getElementsByClassName("message");
// CSSセレクタで取得(最初の1つ)
const firstMessage = document.querySelector(".message");
// CSSセレクタで取得(すべて)
const allMessages = document.querySelectorAll(".message");
3. 要素の内容変更
Javascript
title.textContent = "こんにちは"; // テキストのみ変更
title.innerHTML = "<span style='color:red'>こんにちは</span>"; // HTMLを含めて変更
4. 属性の変更
Javascript
title.setAttribute("data-lang", "ja"); // 属性追加・変更
console.log(title.getAttribute("data-lang")); // 属性取得
title.removeAttribute("data-lang"); // 属性削除
5. スタイルの変更
Javascript
title.style.color = "blue";
title.style.fontSize = "2em";
6. 要素の追加・削除
Javascript
// 新しい要素を作成
const newPara = document.createElement("p");
newPara.textContent = "新しい段落です。";
// bodyの末尾に追加
document.body.appendChild(newPara);
// 要素を削除
newPara.remove();
7. イベント処理
Javascript
title.addEventListener("click", () => {
alert("タイトルがクリックされました!");
});
✅ ポイント
querySelector/querySelectorAllは柔軟で推奨される取得方法。innerHTMLは便利だが、外部入力を直接入れるとXSS脆弱性の原因になるため注意。- DOM操作は頻繁に行うとパフォーマンスに影響するため、まとめて行うのが望ましい。