JavaScriptのイベント操作でよく使うイベント20選!使い方を解説!

【 2025/06/14 00:00 更新 】
目次

    JavaScriptのイベントって?

    JavaScriptのイベントは、Webページ上で特定の何かが起こったときに処理を実行させることができます。

    クリックしたとき、キーボード入力をしたとき、ページ読み込み時など、様々なイベントを定義できます。

    こじはな

    イベント操作はJavaScriptの醍醐味だよ!
    Webページの機能や動きを作れるよ〜!

    JavaScriptのイベントの書き方|Elementオブジェクト.addEventListener(イベント, function(){})

    【 JSのイベントの書き方 】

    Elementオブジェクト.addEventListener("イベント名", function() {
        処理 // イベントが起こった場合に実行される!
    });

    【 例 】
    let button01 = document.getElementById("button01");
    button01.addEventListener("click", function() {
        alert("ボタンがクリックされました!");
    });

    本記事は、JavaScriptの基礎知識をおさえた前提の内容です。

    リンク先のトップ画像

    JS
    イベント
    click|要素がクリックされたとき

    clickイベントは、要素がクリックされたときのイベントです。

    「Elementオブジェクト.addEventListener("click", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    dblclick|要素がダブルクリックされたとき

    dblclickイベントは、要素がダブルクリックされたときのイベントです。

    「Elementオブジェクト.addEventListener("dblclick", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    contextmenu|右クリックメニューが開かれたとき

    contextmenuイベントは、右クリックメニューが開かれたときのイベントです。

    Macやパソコンの設定によっては"二本指クリック"だったり、その他操作方法の場合があります。

    「Elementオブジェクト.addEventListener("contextmenu", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    keydown|キーが押されたとき

    keydownイベントは、キーが押されたときのイベントです。

    「Elementオブジェクト.addEventListener("keydown", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアをクリック後キー入力してみてください!

    JS
    イベント
    keyup|キーが離されたとき

    keyupイベントは、キーが離されたときのイベントです。

    「Elementオブジェクト.addEventListener("keyup", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアをクリック後キー入力してみてください!

    JS
    イベント
    mousedown|クリックボタンが押されたとき

    mousedownイベントは、クリックボタンが押されたときのイベントです。

    「Elementオブジェクト.addEventListener("mousedown", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    mouseup|クリックボタンが離されたとき

    mouseupイベントは、クリックボタンが離されたときのイベントです。

    「Elementオブジェクト.addEventListener("mouseup", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    mousemove|カーソルが動いたとき

    mousemoveイベントは、カーソルが動いたときのイベントです。

    「Elementオブジェクト.addEventListener("mousemove", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    mouseenter|カーソルが要素に入ったとき

    mouseenterイベントは、カーソルが要素に入ったときのイベントです。

    似ているmouseoverイベントでは子要素を出入りするとイベント再発火しますが、 mouseenterイベントでは子要素を出入りしても再発火しません

    「Elementオブジェクト.addEventListener("mouseenter", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    インクリメント"変数++"とは

    プログラミングのインクリメントとは、1加算することを言います。

    JavaScriptでは"変数名++"/"++変数名"で、インクリメントとなります。

    (1減算することをデクリメントと呼び、"変数名--"/"--変数名"と書きます。)

    JS
    イベント
    mouseleave|カーソルが要素から出たとき

    mouseleaveイベントは、カーソルが要素から出たときのイベントです。

    似ているmouseoutイベントでは子要素を出入りするとイベント再発火しますが、 mouseleaveイベントでは子要素を出入りしても再発火しません

    「Elementオブジェクト.addEventListener("mouseleave", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    インクリメント"変数++"とは

    プログラミングのインクリメントとは、1加算することを言います。

    JavaScriptでは"変数名++"/"++変数名"で、インクリメントとなります。

    (1減算することをデクリメントと呼び、"変数名--"/"--変数名"と書きます。)

    JS
    イベント
    mouseover|カーソルが要素に乗ったとき(子要素で再発火)

    mouseoverイベントは、カーソルが要素に乗ったときのイベントです。

    似ているmouseenterイベントでは子要素を出入りしてもイベント再発火しませんが、 mouseoverイベントでは子要素を出入りすると再発火します

    「Elementオブジェクト.addEventListener("mouseover", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    インクリメント"変数++"とは

    プログラミングのインクリメントとは、1加算することを言います。

    JavaScriptでは"変数名++"/"++変数名"で、インクリメントとなります。

    (1減算することをデクリメントと呼び、"変数名--"/"--変数名"と書きます。)

    JS
    イベント
    mouseout|カーソルが要素から離れたとき(子要素で再発火)

    mouseoutイベントは、カーソルが要素から離れたときのイベントです。

    似ているmouseleaveイベントでは子要素を出入りしてもイベント再発火しませんが、 mouseoutイベントでは子要素から出入りすると再発火します

    「Elementオブジェクト.addEventListener("mouseout", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    インクリメント"変数++"とは

    プログラミングのインクリメントとは、1加算することを言います。

    JavaScriptでは"変数名++"/"++変数名"で、インクリメントとなります。

    (1減算することをデクリメントと呼び、"変数名--"/"--変数名"と書きます。)

    JS
    イベント
    submit|フォームがsubmit(送信)されるとき

    submitイベントは、フォームがsubmit(送信)されるときのイベントです。

    「Elementオブジェクト.addEventListener("submit", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    formタグとは

    formタグとは、入力系要素の入力内容をまとめるタグです。

    内包した入力系要素の入力内容を送信(submit)するための設定を定義できます。


    実際に操作してみてください!

    ※スタイルがデフォルトと異なる点はご了承ください。





    コードはこんな感じです!

    【 送信前の画面用HTML 】

    【 送信前の画面用HTML 】

    【 formタグの属性 】

    • action属性:送信先のURLやパスを指定。
    • method属性:GET通信やPOST通信など送信時の通信の種類を指定。

    ※パスとはファイルやディレクトリ(フォルダー)がある場所のことです。


    【 formタグに詳しい記事 】

    リンク先のトップ画像

    【パスの基本に関する記事】

    リンク先のトップ画像

    【 GET通信・POST通信に詳しい記事 】

    リンク先のトップ画像

    JS
    イベント
    change|入力系要素の入力値が変更されたとき

    changeイベントは、inputやselectなど入力系要素の入力値が変更されたときのイベントです。

    似ているinputイベントでは入力内容が変わるたびにイベント発火しますが、 changeイベントではフォーカスが解除されたときにイベント発火します。

    「Elementオブジェクト.addEventListener("change", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    formタグとは

    formタグとは、入力系要素の入力内容をまとめるタグです。

    内包した入力系要素の入力内容を送信(submit)するための設定を定義できます。


    実際に操作してみてください!

    ※スタイルがデフォルトと異なる点はご了承ください。





    コードはこんな感じです!

    【 送信前の画面用HTML 】

    【 送信前の画面用HTML 】

    【 formタグの属性 】

    • action属性:送信先のURLやパスを指定。
    • method属性:GET通信やPOST通信など送信時の通信の種類を指定。

    ※パスとはファイルやディレクトリ(フォルダー)がある場所のことです。


    【 formタグに詳しい記事 】

    リンク先のトップ画像

    【パスの基本に関する記事】

    リンク先のトップ画像

    【 GET通信・POST通信に詳しい記事 】

    リンク先のトップ画像
    inputタグとは
    inputタグのイメージ

    inputタグとは入力ができる要素です。
    type属性に指定する値によって、様々な種類の入力要素になります
    formタグに内包して値を別の画面やプログラムに渡したり、JavaScriptと一緒に使ったりします。


    【 inputタグ基本な属性 】

    • type属性:入力要素の種類を指定でき、値はtext/radio/submit/checkboxなどがあります。
    • name属性:入力値を受け渡しするためのキー名です。このinput要素の名前はこれ!と決めます。
    • value属性:入力値を指定できます。入力系要素の初期値や選択肢ごとの値を定義するときに使います。

    【 type属性の値の種類 】

    • text:文字を入力できます。
    • radio:ラジオボタンとなり、複数の選択肢の中から1つ選択させるときに使います。
    • checkbox:チェックボックスとなり、複数選択可能にさせるときに使います。
    • number:数値を入力できます。
    • email:メールアドレスを入力できます。
    • submit:入力内容を送信(submit)する用のボタンです。

    ※他にもたくさんの種類があります。

    【 コード例 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!


    【inputタグに関する記事】

    リンク先のトップ画像
    selectタグとは

    selectタグとはプルダウンメニューを定義できるタグです。
    selectタグの選択肢を定義するoptionタグと一緒に使います。


    【selectタグに関する記事】

    リンク先のトップ画像

    JS
    イベント
    input|入力フィールドの内容が変更されたとき(リアルタイム)

    inputイベントは、inputやselectなど入力系要素の入力フィールドの内容が変更されたときのイベントです。

    似ているchangeイベントではフォーカスが解除されたときにイベント発火しますが、 inputイベントでは入力内容が変わるたびにリアルタイムでイベント発火します。

    「Elementオブジェクト.addEventListener("input", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    formタグとは

    formタグとは、入力系要素の入力内容をまとめるタグです。

    内包した入力系要素の入力内容を送信(submit)するための設定を定義できます。


    実際に操作してみてください!

    ※スタイルがデフォルトと異なる点はご了承ください。





    コードはこんな感じです!

    【 送信前の画面用HTML 】

    【 送信前の画面用HTML 】

    【 formタグの属性 】

    • action属性:送信先のURLやパスを指定。
    • method属性:GET通信やPOST通信など送信時の通信の種類を指定。

    ※パスとはファイルやディレクトリ(フォルダー)がある場所のことです。


    【 formタグに詳しい記事 】

    リンク先のトップ画像

    【パスの基本に関する記事】

    リンク先のトップ画像

    【 GET通信・POST通信に詳しい記事 】

    リンク先のトップ画像
    inputタグとは
    inputタグのイメージ

    inputタグとは入力ができる要素です。
    type属性に指定する値によって、様々な種類の入力要素になります
    formタグに内包して値を別の画面やプログラムに渡したり、JavaScriptと一緒に使ったりします。


    【 inputタグ基本な属性 】

    • type属性:入力要素の種類を指定でき、値はtext/radio/submit/checkboxなどがあります。
    • name属性:入力値を受け渡しするためのキー名です。このinput要素の名前はこれ!と決めます。
    • value属性:入力値を指定できます。入力系要素の初期値や選択肢ごとの値を定義するときに使います。

    【 type属性の値の種類 】

    • text:文字を入力できます。
    • radio:ラジオボタンとなり、複数の選択肢の中から1つ選択させるときに使います。
    • checkbox:チェックボックスとなり、複数選択可能にさせるときに使います。
    • number:数値を入力できます。
    • email:メールアドレスを入力できます。
    • submit:入力内容を送信(submit)する用のボタンです。

    ※他にもたくさんの種類があります。

    【 コード例 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!


    【inputタグに関する記事】

    リンク先のトップ画像
    selectタグとは

    selectタグとはプルダウンメニューを定義できるタグです。
    selectタグの選択肢を定義するoptionタグと一緒に使います。


    【selectタグに関する記事】

    リンク先のトップ画像

    JS
    イベント
    focus|要素にフォーカスしたとき

    focusイベントは、要素にフォーカスしたときのイベントです。

    「Elementオブジェクト.addEventListener("focus", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    条件分岐のif()とは

    if文は、「もし〇〇のときに実行する」という意味を表します。
    プログラミングにおいて基本な条件分岐の命令文です。

    【 JSのif文の書き方 】

    〜 多分岐なし 〜
    if (条件A) {
        処理A // 条件Aが真(true)だったら実行!
    }
    〜 多分岐 〜
    if (条件A) {
        処理A // 条件Aが真(true)だったら実行!
    }
    else if (条件B) {
        処理B // 条件Aが偽(false)で、条件Bが真(true)だったら実行!
    }
    else {
        処理C // 条件A・条件Bどちらも偽(false)だったら実行!
    }

    【if文に関する記事】

    リンク先のトップ画像
    formタグとは

    formタグとは、入力系要素の入力内容をまとめるタグです。

    内包した入力系要素の入力内容を送信(submit)するための設定を定義できます。


    実際に操作してみてください!

    ※スタイルがデフォルトと異なる点はご了承ください。





    コードはこんな感じです!

    【 送信前の画面用HTML 】

    【 送信前の画面用HTML 】

    【 formタグの属性 】

    • action属性:送信先のURLやパスを指定。
    • method属性:GET通信やPOST通信など送信時の通信の種類を指定。

    ※パスとはファイルやディレクトリ(フォルダー)がある場所のことです。


    【 formタグに詳しい記事 】

    リンク先のトップ画像

    【パスの基本に関する記事】

    リンク先のトップ画像

    【 GET通信・POST通信に詳しい記事 】

    リンク先のトップ画像
    inputタグとは
    inputタグのイメージ

    inputタグとは入力ができる要素です。
    type属性に指定する値によって、様々な種類の入力要素になります
    formタグに内包して値を別の画面やプログラムに渡したり、JavaScriptと一緒に使ったりします。


    【 inputタグ基本な属性 】

    • type属性:入力要素の種類を指定でき、値はtext/radio/submit/checkboxなどがあります。
    • name属性:入力値を受け渡しするためのキー名です。このinput要素の名前はこれ!と決めます。
    • value属性:入力値を指定できます。入力系要素の初期値や選択肢ごとの値を定義するときに使います。

    【 type属性の値の種類 】

    • text:文字を入力できます。
    • radio:ラジオボタンとなり、複数の選択肢の中から1つ選択させるときに使います。
    • checkbox:チェックボックスとなり、複数選択可能にさせるときに使います。
    • number:数値を入力できます。
    • email:メールアドレスを入力できます。
    • submit:入力内容を送信(submit)する用のボタンです。

    ※他にもたくさんの種類があります。

    【 コード例 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!


    【inputタグに関する記事】

    リンク先のトップ画像
    selectタグとは

    selectタグとはプルダウンメニューを定義できるタグです。
    selectタグの選択肢を定義するoptionタグと一緒に使います。


    【selectタグに関する記事】

    リンク先のトップ画像

    JS
    イベント
    blur|要素からフォーカスが外れたとき

    blurイベントは、要素からフォーカスが外れたときのイベントです。

    「Elementオブジェクト.addEventListener("blur", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    条件分岐のif()とは

    if文は、「もし〇〇のときに実行する」という意味を表します。
    プログラミングにおいて基本な条件分岐の命令文です。

    【 JSのif文の書き方 】

    〜 多分岐なし 〜
    if (条件A) {
        処理A // 条件Aが真(true)だったら実行!
    }
    〜 多分岐 〜
    if (条件A) {
        処理A // 条件Aが真(true)だったら実行!
    }
    else if (条件B) {
        処理B // 条件Aが偽(false)で、条件Bが真(true)だったら実行!
    }
    else {
        処理C // 条件A・条件Bどちらも偽(false)だったら実行!
    }

    【if文に関する記事】

    リンク先のトップ画像
    formタグとは

    formタグとは、入力系要素の入力内容をまとめるタグです。

    内包した入力系要素の入力内容を送信(submit)するための設定を定義できます。


    実際に操作してみてください!

    ※スタイルがデフォルトと異なる点はご了承ください。





    コードはこんな感じです!

    【 送信前の画面用HTML 】

    【 送信前の画面用HTML 】

    【 formタグの属性 】

    • action属性:送信先のURLやパスを指定。
    • method属性:GET通信やPOST通信など送信時の通信の種類を指定。

    ※パスとはファイルやディレクトリ(フォルダー)がある場所のことです。


    【 formタグに詳しい記事 】

    リンク先のトップ画像

    【パスの基本に関する記事】

    リンク先のトップ画像

    【 GET通信・POST通信に詳しい記事 】

    リンク先のトップ画像
    inputタグとは
    inputタグのイメージ

    inputタグとは入力ができる要素です。
    type属性に指定する値によって、様々な種類の入力要素になります
    formタグに内包して値を別の画面やプログラムに渡したり、JavaScriptと一緒に使ったりします。


    【 inputタグ基本な属性 】

    • type属性:入力要素の種類を指定でき、値はtext/radio/submit/checkboxなどがあります。
    • name属性:入力値を受け渡しするためのキー名です。このinput要素の名前はこれ!と決めます。
    • value属性:入力値を指定できます。入力系要素の初期値や選択肢ごとの値を定義するときに使います。

    【 type属性の値の種類 】

    • text:文字を入力できます。
    • radio:ラジオボタンとなり、複数の選択肢の中から1つ選択させるときに使います。
    • checkbox:チェックボックスとなり、複数選択可能にさせるときに使います。
    • number:数値を入力できます。
    • email:メールアドレスを入力できます。
    • submit:入力内容を送信(submit)する用のボタンです。

    ※他にもたくさんの種類があります。

    【 コード例 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!


    【inputタグに関する記事】

    リンク先のトップ画像
    selectタグとは

    selectタグとはプルダウンメニューを定義できるタグです。
    selectタグの選択肢を定義するoptionタグと一緒に使います。


    【selectタグに関する記事】

    リンク先のトップ画像

    JS
    イベント
    scroll|スクロールしたとき

    scrollイベントは、スクロールしたときのイベントです。

    「Elementオブジェクト.addEventListener("scroll", function(){})」と書きます。

    【 CSS 】
    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    Element/window(BOM)オブジェクトかで違う

    スクロール位置取得のコードは、Elementオブジェクトか、window(BOM)オブジェクトかで違います

    Element
    • 横の位置:Elementオブジェクト.scrollLeft
    • 縦の位置:Elementオブジェクト.scrollTop
    window(BOM)
    • 横の位置:window.scrollX
    • 縦の位置:window.scrollY

    JS
    イベント
    load|ページや画像などの読み込みが完了したとき

    loadイベントは、ページや画像などの読み込みが完了したときのイベントです。

    「DOM.addEventListener("load", function(){})」と書きます。

    こじはな

    ローディング画面をつくるのに使えるよ!

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    以下のエリアで操作してみてください!

    JS
    イベント
    resize|ウィンドウサイズが変更されたとき

    resizeイベントは、ウィンドウサイズが変更されたときのイベントです。

    「DOM/BOMオブジェクト.addEventListener("resize", function(){})」と書きます。

    【 HTML 】
    【 JavaScript 】

    ブラウザで実行するとこんな感じです。

    HTMLの実行結果

    まとめ

    • JavaScriptのイベントは、Webページ上で特定の何かが起こったときに処理を実行させることができる。
    • イベントはElementオブジェクト.addEventListener(イベント, function(){})と書く。
    • clickイベント要素がクリックされたときのイベント。
    • dblclickイベント:要素がダブルクリックされたときのイベント。
    • contextmenuイベント:右クリックメニューが開かれたときのイベント。
    • keydownイベント:キーが押されたときのイベント。
    • keyupイベント:キーが離されたときのイベント。
    • mousedownイベント:クリックボタンが押されたときのイベント。
    • mouseupイベント:クリックボタンが離されたときのイベント。
    • mousemoveイベント:カーソルが動いたときのイベント。
    • mouseenterイベント:カーソルが要素に入ったときのイベントで、子要素を出入りしても再発火しない
    • mouseleaveイベント:カーソルが要素から出たときのイベントで、子要素を出入りしても再発火しない
    • mouseoverイベント:カーソルが要素に乗ったときのイベントで、子要素を出入りすると再発火する
    • mouseoutイベント:カーソルが要素から離れたときのイベントで、子要素を出入りすると再発火する
    • submitイベント:フォームがsubmit(送信)されるときのイベント。
    • changeイベント:inputやselectなど入力系要素の入力値が変更されたときのイベントで、フォーカスが解除されたときにイベント発火する。
    • inputイベント:inputやselectなど入力系要素の入力フィールドの内容が変更されたときのイベントで、入力内容が変わるたびにリアルタイムでイベント発火する。
    • focusイベント:要素にフォーカスしたときのイベント。
    • blurイベント:要素からフォーカスが外れたときのイベント。
    • scrollイベント:スクロールしたときのイベント。
    • loadイベント:ページや画像などの読み込みが完了したときのイベント。
    • resizeイベント:ウィンドウサイズが変更されたときのイベント。
    【 2025/06/14 00:00 更新 】