Code de la touche point-virgule (;) en JavaScript

Pour point-virgule (;), event.key vaut ; (or : with Shift), event.code vaut Semicolon et l'obsolète keyCode vaut 186. Appuyez sur une touche dans le Key Code Finder pour voir ses valeurs en direct.

Mis à jour le

PropriétéValeur
event.key; (or : with Shift)
event.codeSemicolon
event.keyCode / which (obsolète)186

Comment détecter le point-virgule (;)

document.addEventListener('keydown', (event) => {
  if (event.key === ";") {
    // Semicolon (;) 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 varient selon les navigateurs et les dispositions de clavier.

Comment les navigateurs gèrent le point-virgule (;)

Les touches de ponctuation changent de place sur les claviers internationaux : sur les claviers allemands, cette touche saisit Ö. Utilisez event.key pour le caractère saisi, et event.code uniquement pour les positions physiques, comme les commandes de jeu.

Dans React

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

Questions fréquentes

Quel est le keyCode du point-virgule (;) ?
186. Il est toutefois obsolète : utilisez event.key (« ; » ou « : » avec Maj) ou event.code (Semicolon) dans le nouveau code.
Quelle est la différence entre event.key et event.code ?
event.key est le 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 directionnelles.