現役システムエンジニアの備忘録

技術スキルや用語などの記録を残していきます

イベント

【JavaScript入門】onkeydown・onkeypress・onkeyupの使い方|キー操作イベントの発生タイミングを徹底解説

投稿日:2019年6月21日 更新日:

JavaScriptのonkeydown・onkeypress・onkeyupとは?キー操作で発生するイベントを解説

onkeydownonkeypressonkeyup は、
キーボードの操作に応じて発生するイベントです。
同じ要素に設定した場合、一般的に onkeydown → onkeypress → onkeyup の順に発生します。

ただし、ブラウザによって発生順序や挙動が異なる場合があります。



onkeydownイベントとは?

onkeydown は、キーが押された瞬間に発生するイベントです。
最も早いタイミングでキー入力を検知できます。

使用例:キーが押されたらメッセージを表示

<body onkeydown=”alert(‘呼んだ?’)”>

→ キーを押した瞬間にダイアログが表示されます。



onkeypressイベントとは?

onkeypress は、キーが押されている間、断続的に発生するイベントです。
文字入力に関連するキーでのみ発生する場合があります。

使用例:キーが押されている間、関数を呼び出す

document.onkeypress = kpress;

→ キーを押し続けている間、kpress() が繰り返し実行されます。

onkeyupイベントとは?

onkeyup は、押されたキーが離されたときに発生するイベントです。
入力確定後の処理に向いています。

使用例:キーが離されたら処理を実行

<a href=”#” onkeyup=”kup()”>リンク</a>

→ キーを離した瞬間に kup() が実行されます。



3つのキーボードイベントの違い

イベント 発生タイミング
onkeydown キーを押した瞬間
onkeypress キーが押されている間(文字入力系のみ)
onkeyup キーを離した瞬間

→ 入力のタイミングに応じて使い分けることで、より細かい制御が可能になります。

実際のサンプル

<input type=”text” name=”keytest”
  onkeydown=”console.log(‘keydown’)”
  onkeypress=”console.log(‘keypress’)”
  onkeyup=”console.log(‘keyup’)”>

→ キー操作の順序を確認するのに便利です。

まとめ

  • onkeydown:キーを押した瞬間に発生
  • onkeypress:キーが押されている間に発生(文字入力系)
  • onkeyup:キーを離した瞬間に発生
  • 入力補助・ショートカットキー・リアルタイム入力処理に便利

関連リンク

X

このブログは Xserver 上の WordPress で運用しています。
表示速度が速く、安定しているのでブログ初心者にもおすすめです。
レンタルサーバー エックスサーバー

-イベント
-

執筆者:

関連記事

【JavaScript入門】event.target・event.typeの使い方|イベント発生元と種類を取得する方法

JavaScriptのevent.target・event.typeとは?イベント発生元と種類を取得する方法 event.target と event.type は、イベントオブジェクトから 「どの要 …

【JavaScript入門】onmouseover・onmouseoutの使い方|マウス操作で発生するイベント処理を解説

JavaScriptのonmouseover・onmouseoutとは?マウス操作で発生するイベントをわかりやすく解説 onmouseover と onmouseout は、マウスカーソルが要素に重な …

【JavaScript入門】onresizeの使い方|ウィンドウサイズ変更時に処理を実行する方法

JavaScriptのonresizeとは?ウィンドウサイズ変更時に処理を実行する方法 onresize は、ウィンドウやフレームのサイズが変更されたときに発生するイベントです。 画面サイズに応じてレ …

【JavaScript入門】keyCodeの使い方|押されたキーのコードを取得する方法を解説

JavaScriptのkeyCodeとは?押されたキーのコードを取得する方法を解説 event.keyCode は、キーボードで押されたキーのコード(キーコード)を取得するためのプロパティです。 どの …

【JavaScript入門】マウス座標の取得方法まとめ|clientX・pageX・screenXの違いをわかりやすく解説

JavaScriptのマウス座標プロパティまとめ|x・y・clientX・pageX・screenXの違いを解説 JavaScript のイベントオブジェクトには、マウスの位置を取得するための x / …