JavaScript
jQueryプラグイン「scroll-hint」で横スクロールを気づきやすくする方法
2025.11.18
JavaScriptイベント入門:ユーザー操作でdocumentを動かそう
2025.09.04
前回の記事では、documentオブジェクトを使ってHTML要素を操作する方法を学びました。たとえばtextContentで文章を変えたり、appendChild()で要素を追加したりすることで、ページの見た目を自在に変えられることがわかりましたね。しかし、あの方法だけではページを開いた瞬間にしか反映されません。では、ユーザー側からの操作を受け付けたときに処理を実行するにはどうすればよいのでしょうか?その答えがイベントです。今回はイベント入門として、Webページを任意のタイミングで動かす基本を解説します。
イベントとは、ユーザーの行動やブラウザの動きによって発生する合図のことです。
よくあるイベントの例:
イベントと処理を組み合わせることで、なにかしらのきっかけからJavaScriptで書かれた動作を実行するという流れを作ることができます。つまり、前回で学んだdocument操作と組み合わせればいつ何をするかを自由に設定できるようになります。
イベントを登録するもっとも一般的な方法は、addEventListener()を使うやり方です。
スクリプト例クリックでアラートを表示HTML
<button id="clickTest">クリックしてね</button>
JavaScript
const clickTest = document.getElementById("clickTest");
clickTest.addEventListener("click", function() {
alert("クリックされました!");
});
このように、addEventListener(“イベント発動のトリガー”, イベントの処理)と書くことで、イベントの処理を登録できます。
前章の例でも出てきましたがクリックイベントは、最もよく使われるイベントのひとつです。
HTML
<p id="text">最初の文章です。</p>
<button id="changeBtn">文章を変える</button>
JavaScript
const text = document.getElementById("text");
const btn = document.getElementById("changeBtn");
btn.addEventListener("click", function() {
text.textContent = "文章が変更されました!";
});
最初の文章です。
このように、ユーザーがボタンやリンクなどをクリックした瞬間に発生します。
入力イベントは、テキストボックスやテキストエリアに文字を入力したときに発生します。
HTML
<input type="text" id="inputBox" placeholder="入力してみてください"> <p id="output"></p>
JavaScript
const inputBox = document.getElementById("inputBox");
const output = document.getElementById("output");
inputBox.addEventListener("input", function() {
output.textContent = inputBox.value;
});
入力するたびにイベントが起きるので、リアルタイムの処理に向いています。
マウスオーバーは、要素にマウスカーソルが乗った瞬間に発生します。また、カーソルが外れたときに発生するのがmouseoutです。
HTML
<img id="img" src="sample1.jpg" alt="画像" width="200">
JavaScript
const img = document.getElementById("img");
img.addEventListener("mouseover", function() {
img.src = "sample2.jpg";
});
img.addEventListener("mouseout", function() {
img.src = "sample1.jpg";
});
この組み合わせを使えば、ユーザー側がカーソルを置いたときと外したときの動きを簡単に表現できます。
イベントは「きっかけ」、document操作は「実際の処理」です。 両方を組み合わせることで、ユーザーが操作するたびにページの見た目や内容を変化させることができます。例えばクリックで要素を追加や、削除ボタンで要素を消すといった処理は、イベントとdocument操作を組み合わせる典型的な例です。それらを応用することで
といった動きも、イベントとdocument操作を組み合わせることで実現できます。
今回の記事では、JavaScriptのイベントについて学びました。イベントはユーザーの操作やブラウザの動きをきっかけにして処理を実行する仕組みです。
前回の記事では、documentを使って要素を取得・変更する方法を解説しましたが、今回はそこにイベント(きっかけ)を組み合わせることで、ユーザーの操作に応じてページが動く仕組みが作れるようになりました。この2つを合わせると、単なる静的なページから動きのあるWebページに一歩近づけます。次のステップとしては、イベントを使ってCSSのスタイルを変えるなど、見た目の演出を加えていくと、さらに動的な表現ができるようになります。
投稿一覧に戻る