Code de la touche F1 en JavaScript

Pour F1, event.key vaut F1, event.code vaut F1 et l’ancienne keyCode vaut 112. Appuyez sur n’importe quelle touche dans le Key Code Finder pour voir ses valeurs en direct.

Mis à jour le

PropriétéValeur
event.keyF1
event.codeF1
event.keyCode / which (obsolète)112

Comment détecter F1

document.addEventListener('keydown', (event) => {
  if (event.key === "F1") {
    // F1 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 F1

Certains navigateurs ouvrent l’aide avec F1, selon le système. Les touches de fonction F1 à F12 envoient les keyCode 112 à 123 ; sur les ordinateurs portables, beaucoup nécessitent la touche Fn, et le système d’exploitation peut les utiliser pour la luminosité ou le volume.

Avec React

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

Questions fréquentes

Quel est le keyCode de F1 ?
112. Il est toutefois obsolète : dans le nouveau code, utilisez event.key (« F1 ») ou event.code (F1).
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 correspond à 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.