GlobalEventHandlers.onkeydown

La propriété onkeydown, rattachée au mixin GlobalEventHandlers, est un gestionnaire d'évènements (en-US) qui permet de traiter les évènements keydown (en-US).

L'évènement keydown est déclenché lorsque l'utilisatrice ou l'utilisateur appuie sur une touche du clavier.

Syntaxe

cible.onkeydown = refFunction;

Value

refFunction est un nom de fonction ou une expression de fonction. La fonction reçoit un objet KeyboardEvent comme unique argument.

Exemple

Cet exemple affiche la valeur de KeyboardEvent.code à chaque fois qu'on appuie sur une touche à l'intérieur de l'élément <input>.

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}`;
}

Résultat

Spécifications

No specification found

No specification data found for api.GlobalEventHandlers.onkeydown.
Check for problems with this page or contribute a missing spec_url to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.

Compatibilité des navigateurs

No compatibility data found for api.GlobalEventHandlers.onkeydown.
Check for problems with this page or contribute missing data to mdn/browser-compat-data.

Notes de compatibilité

Depuis Firefox 65, les évènements keyup (en-US) et keydown (en-US) sont désormais déclenchés pendant la composition IME afin d'améliorer la compatibilité entre les navigateurs pour les locuteurs de langues asiatiques (CJKT) (voir le bug 354358). Pour ignorer les évènements keydown qui font partie d'une composition, on pourra écrire quelque chose d'analogue au fragment qui suit (229 est une valeur spéciale de keyCode relative à un évènement qui a été traité par un IME) :

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

Voir aussi