JavaScript
jQueryプラグイン「scroll-hint」で横スクロールを気づきやすくする方法
2025.11.18
JavaScriptのdocumentって何?HTMLを書き換える最初のステップ
2025.08.28
Webサイトを制作していると、「文字や画像をクリックで変更したい」といった動きを取り入れたくなる場面が出てくるかもしれません。そこで登場するのが JavaScriptのdocumentオブジェクト です。documentオブジェクトは、HTMLの要素をJavaScriptから自由に操作するための入り口ともいえる存在です。この仕組みを理解すると、文字の書き換えやデザインの変更など、Webページを静的なものから動的なものへと進化させる第一歩となります。
この記事では、初心者の方にも分かりやすいように次の流れで解説していきます。
documentオブジェクトとは、Webページの内容(HTML)をJavaScriptから操作するために必要なオブジェクトです。イメージとしては、ブラウザがページを読み込んだ際に、HTML全体をまとめたもの(=document)を自動で用意してくれる、といった感じです。
見出しを変更したい、画像を差し替えたいといったとき、JavaScriptは必ずこのdocumentを通じて要素にアクセスします。つまり、documentはJavaScriptとHTMLをつなぐ「窓口」のような存在なのです。
documentを使えば、ページ内の特定の要素を探して取り出すことができます。ここでは代表的な3つの方法を紹介します。
要素のid属性を指定して取得する方法です。もっとも基本的で、確実に1つの要素を取得できます。
HTML
<h1 id="title">こんにちは</h1>
JavaScript
const heading = document.getElementById("title");
console.log(heading);
// <h1 id="title">こんにちは</h1>
こんにちは
※実行結果は実際にはコンソールに表示されます。
この方法はそのページ内に必ず1つしか存在しない要素を取り出したいときに便利です。
また、取得するのはid属性のため同じページ内で2つ以上は存在してはいけないことに注意してください。
CSSセレクタ を使って要素を取得する方法です。タグ名・クラス名・id などを自由に指定でき、最初に一致した1つの要素を返します。
HTML
<p class="text">文章です</p>
JavaScript
const p = document.querySelector(".text");
console.log(p);
// <p class="text">文章です</p>
文章です
※実行結果は実際にはコンソールに表示されます。
CSSと同じ書き方ができるので、次のような柔軟な使い方ができます。
例えば、記事一覧の最初のタイトルだけを変えたいといったときや、クラスを指定して特定の装飾を切り替えるといった場面で便利です。もし複数の要素をまとめて取得したい場合は、querySelectorAllを使うとリスト(NodeList)として全部取り出せます。
複数の要素をまとめて取得したい場合はこちらを使います。NodeList(配列に似たリスト)として取り出せます。
HTML
<ul>
<li class="item">りんご</li>
<li class="item">みかん</li>
<li class="item">ぶどう</li>
</ul>
JavaScript
const items = document.querySelectorAll(".item");
items.forEach(el => console.log(el.textContent));
りんご
みかん
ぶどう
※実行結果は実際にはコンソールに表示されます。
このようにして「一覧の要素を順番に処理する」ことができます。記事タイトル一覧や商品リストをまとめて操作したいときに役立ちます。
取得した要素はJavaScriptから自由に操作できます。代表的な変更方法をいくつか紹介します。
textContentやinnerTextを使って、要素内の文字を変更できます。
HTML
<p id="message">こんにちは!</p>
JavaScript
heading.innerText = "こんばんは!";
こんばんは!
利用例:
初心者のうちは、基本的にtextContentを使うだけで問題ありません。
src属性を書き換えることで、表示される画像を差し替えることができます。
HTML
<img id="mainImg" src="apple.jpg" alt="りんご">
JavaScript
const img = document.getElementById("mainImg");
img.src = "orange.jpg";
img.alt = "みかん";
利用例:
画像要素(img)の場合、画像ファイルのパスを指定するsrc属性を変えるのが代表的な使い方です。
styleプロパティを使って、特定の要素のデザインを直接変更できます。
HTML
<p id="highlight">強調したい文章</p>
JavaScript
const text = document.getElementById("highlight");
text.style.color = "red";
text.style.fontSize = "20px";
利用例:
これを使うことで、文字の色、背景色、大きさなどを動的に変えることが可能です。
ここまでで要素を取得して変更する方法を紹介しました。では、この仕組みを使うとWebサイトでどのようなことが実装できるのでしょうか。代表的な例をいくつか挙げてみます。
このように、documentを使うことでユーザーの操作に応じた動きのあるWebページを作ることができます。
要素を取得して操作するだけでなく、ユーザーの操作(イベント)に応じて動作させることで、よりインタラクティブな仕組みを実現できます。
サンプルとして「ボタンをクリックすると文字が変わる」例を紹介します。
HTML
<button id="btnSample">押してみる</button>
<p id="msgSample">ここが変わります</p>
JavcaScript
const btnSample = document.getElementById("btnSample");
const msgSample = document.getElementById("msgSample");
btnSample.addEventListener("click", () => {
msgSample.innerText = "ボタンが押されました!";
});
ここが変わります
このようにイベントと組み合わせることで、Webページを「ユーザーの操作に反応する仕組み」へと進化させることができます。
この記事では、documentオブジェクトを使ってHTML要素を操作する基本を解説しました。
まずは小さな例から試して、documentを通じて「Webページをコントロールできる感覚」をつかんでみてください。
投稿一覧に戻る