HTML
 Computer >> コンピューター >  >> プログラミング >> HTML

HTML5標準イベントとは?イベント属性の種類と使い方を徹底解説

HTML5標準イベントとは

ユーザーがウェブサイトを訪れると、テキストや画像をクリックしたり、リンクを選択したり、要素の上にマウスカーソルを重ねたりと、さまざまな操作を行います。こうしたユーザーの動きこそが、JavaScriptにおける「イベント」の典型例です。

イベントへの反応として実行される処理(イベントハンドラー)は、JavaScriptやVBScriptで記述できます。さらに、HTML5ではイベントハンドラーをタグの属性値として直接指定することも可能で、仕様には数多くのイベント属性が定義されています。

イベントハンドラーの基本的な書き方

たとえば、ボタンがクリックされたタイミングで処理を実行したい場合は、次のようにonclick属性へJavaScriptのコードを記述します。

<button onclick="showMessage()">クリックしてください</button>

このように、HTML側にイベント属性を埋め込むだけで、ユーザーの操作に応じた動的な挙動を手軽に実装できます。

HTML5で定義される主なイベント属性一覧

HTML5の仕様には非常に多くのイベント属性が含まれています。ここでは、理解しやすいようにカテゴリ別に分類して紹介します。すべてのイベント属性の値には、実行したいスクリプト(script)を指定します。

ウィンドウ・ドキュメント関連のイベント

属性説明
onloadドキュメントが読み込まれたときに発生
onbeforeonloadドキュメントが読み込まれる前に発生
onunloadユーザーがページを離脱するときに発生
onblurウィンドウがフォーカスを失ったときに発生
onfocusウィンドウがフォーカスを取得したときに発生
onresizeウィンドウのサイズが変更されたときに発生
onscroll要素のスクロールバーがスクロールされたときに発生
onerrorエラーが発生したときに発生
onabort処理が中断されたときに発生
onmessageメッセージイベントがトリガーされたときに発生
onoffline / ononlineドキュメントがオフライン/オンラインになったときに発生
onafterprint / onbeforeprintドキュメントの印刷後/印刷前に発生
onpagehide / onpageshowウィンドウが非表示になったとき/表示されたときに発生
onhaschangeドキュメントの内容が変化したときに発生
onpopstateブラウザの履歴(ヒストリー)が変化したときに発生
onundo / onredo「元に戻す」/「やり直し」が実行されたときに発生
onstorageWebストレージの内容が更新されたときに発生

マウス操作関連のイベント

属性説明
onclick要素がマウスでクリックされたときに発生
ondblclick要素がダブルクリックされたときに発生
onmousedown / onmouseupマウスボタンが押されたとき/離されたときに発生
onmousemoveマウスポインタが移動したときに発生
onmouseover / onmouseoutポインタが要素に乗ったとき/要素から外れたときに発生
onmousewheelマウスホイールが回転されたときに発生
oncontextmenuコンテキストメニュー(右クリックメニュー)が呼び出されたときに発生

キーボード操作関連のイベント

属性説明
onkeydownキーが押されたときに発生
onkeypressキーが押されて離されたときに発生
onkeyupキーが離されたときに発生

フォーム関連のイベント

属性説明
onchange要素の値が変更されたときに発生
oninput要素がユーザー入力を受け取ったときに発生
onformchange / onforminputフォームが変更されたとき/ユーザー入力を受け取ったときに発生
onsubmitフォームが送信されたときに発生
oninvalid要素の入力値が無効な場合に発生
onselect要素内のテキストが選択されたときに発生

ドラッグ&ドロップ関連のイベント

属性説明
ondragstartドラッグ操作の開始時に発生
ondrag要素がドラッグされている間に発生
ondragendドラッグ操作の終了時に発生
ondragenter / ondragleave要素が有効なドロップ先に入ったとき/離れたときに発生
ondragover要素が有効なドロップ先の上をドラッグされているときに発生
ondropドラッグ中の要素がドロップされたときに発生

メディア(音声・動画)関連のイベント

属性説明
onplay / onplayingメディアの再生が開始されるとき/開始されたときに発生
onpauseメディアが一時停止されたときに発生
onendedメディアが最後まで再生されたときに発生
oncanplay再生を開始できる状態になったときに発生(バッファリングで停止する可能性あり)
oncanplaythroughバッファリングなしで最後まで再生できる状態になったときに発生
onloadstartブラウザがメディアデータの読み込みを開始したときに発生
onloadeddataメディアデータが読み込まれたときに発生
onloadedmetadata再生時間などのメタデータが読み込まれたときに発生
onprogressブラウザがメディアデータをダウンロード中のときに発生
onsuspendファイル全体の取得前にデータ取得が停止したときに発生
onstalledメディアデータの取得中にエラーが発生したときに発生
onwaiting再生が一時的に中断され、再開を待っている状態のときに発生
onseeking / onseekedシーク(再生位置の移動)が開始されたとき/終了したときに発生
ontimeupdateメディアの再生位置が変化したときに発生
onvolumechange音量が変更されたときに発生(ミュート設定時も含む)
ondurationchangeメディアの長さが変更されたときに発生
onemptiedメディアリソースが突然空になったときに発生
onreadystatechange準備状態(ready-state)が変化したときに発生

まとめ

HTML5のイベント属性を使いこなせば、クリックや入力、ドラッグ&ドロップ、動画再生など、ユーザーのあらゆる操作に応答するインタラクティブなウェブページを構築できます。まずはonclickonloadなど使用頻度の高いイベントから試してみて、徐々に対応範囲を広げていくのがおすすめです。

  1. HTMLのrowspanとcolspanとは?テーブルのセル結合方法を解説

    rowspanとcolspanとは HTMLで表(テーブル)を作成する際に使われるrowspanとcolspanは、<td>タグの属性です。これらを使うことで、1つのセルが複数の行や列にまたがって表示されるようになります。 rowspan:セルを縦方向(行)にまたがらせる属性 colspan:セルを横方向(列)にまたがらせる属性 なお、これらの属性は見出しセル用の<th>タグでも同様に使用できます。 属性値の指定方法 両属性とも数値を指定します。たとえばcolspan="3"と記述すれば、そのセルは3列分の幅を持ちます。同様にrowspan=&

  2. HTMLのscript要素におけるcharset属性の使い方を解説

    script要素のcharset属性とは <script>要素のcharset属性は、外部スクリプトファイルで使用する文字エンコーディング(文字セット)を指定するための属性です。外部ファイル内に日本語などのマルチバイト文字が含まれる場合に、文字化けを防いで正しく表示するために利用されてきました。 なお、charset属性はHTML5では廃止された属性であり、現在ではサーバー側のHTTPヘッダーや<meta>タグによって文字コードを指定するのが一般的です。歴史的な仕様やレガシーコードの理解として押さえておきましょう。 構文 <script charset="