GlobalEventHandlers.onkeydown

onkeydownGlobalEventHandlers ミックスインのプロパティで keydown イベントを処理する EventHandler です。

keydown イベントは、ユーザーがキーボードのキーを押下した時に発生します。

構文

target.onkeydown = functionRef;

functionRef は関数名または 関数式 です。この関数は、KeyboardEvent オブジェクトとその 1 個の引数を受け取ります。

この例は、<input> 要素内でキーを押下するたびに、そのキーの KeyboardEvent.code 値をログ出力します。

HTML

<input>
<p id="log"></p>

JavaScript

const input = document.querySelector('input');
const log = document.getElementById('log');

input.onkeydown = logKey;

function logKey(e) {
  log.textContent += ` ${e.code}`;
}

結果

仕様書

仕様書 状態 備考
HTML Living Standard
onkeydown の定義
現行の標準

ブラウザーの互換性

BCD tables only load in the browser

互換性ノート

Firefox 65 以降、keyup および keydown イベントは、CJKT (中国、日本、韓国、台湾) ユーザーのブラウザー間の互換性を改善するために、IME 変換中に発生するようになりました (詳細は バグ 354358 および IME 変換中にも keydown、keyup イベントが発生するようになりました を参照)。変換対象の一部に対してすべての keydown イベントを無視するには、次のようにしてください (229 は IME により処理されるイベントに関する keyCode の特別な値セットです):

eventTarget.addEventListener("keydown", event => {
  if (event.isComposing || event.keyCode === 229) {
    return;
  }
  // do something
});

関連情報