Touche Quote (') en JavaScript

Pour Quote ('), event.key vaut ' (or " with Shift), event.code vaut Quote et keyCode (obsolète) vaut 222. Appuyez sur n'importe quelle touche dans le Key Code Finder pour voir ses valeurs en direct.

Mis à jour le

PropriétéValeur
event.key' (or " with Shift)
event.codeQuote
event.keyCode / which (obsolète)222

Comment détecter Quote (')

document.addEventListener('keydown', (event) => {
  if (event.key === "'") {
    // Quote (') was pressed
  }
});

Utilisez event.key pour réagir à la signification de la touche (elle suit la disposition du clavier) et event.code pour sa position physique, par exemple WASD dans les jeux. keyCode et which sont obsolètes : ils fonctionnent encore, mais leurs valeurs diffèrent selon les navigateurs et les dispositions de clavier.

Comportement de Quote (') dans les navigateurs

Sur certaines dispositions de clavier internationales, le guillemet simple est une touche morte utilisée pour saisir les lettres accentuées.

Dans React

<input onKeyDown={(e) => { if (e.key === "'") { /* … */ } }} />

Questions fréquentes

Quel est le keyCode de Quote (') ?
222. Il est toutefois obsolète : utilisez event.key (« ' » ou « " » avec Maj) ou event.code (Quote) dans le nouveau code.
Quelle est la différence entre event.key et event.code ?
event.key correspond au caractère ou à l'action produit par la touche avec la disposition actuelle ; event.code est la position physique de la touche, identique sur toutes les dispositions.
Faut-il utiliser keydown ou keypress ?
keydown. L'événement keypress est obsolète et ne se déclenche pas pour les touches qui ne produisent pas de caractère, comme Échap ou les flèches.