Maison >interface Web >js tutoriel >Comment détecter les pressions sur les touches fléchées en JavaScript ?

Comment détecter les pressions sur les touches fléchées en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-10 10:54:03527parcourir

How to Detect Arrow Key Presses in JavaScript?

Détection des pressions sur les touches fléchées en JavaScript

Déterminer quand les touches fléchées sont enfoncées en JavaScript peut être difficile car les navigateurs les interprètent différemment en raison du défilement par défaut comportement.

Utilisation de l'écouteur d'événement onkeydown

Comme mentionné dans le problème, l'événement onkeypress ne capture pas les pressions sur les touches fléchées. Au lieu de cela, vous devez utiliser l'écouteur d'événements onkeydown. Modifiez votre fonction comme suit :

function checkKey(e) {
    var event = window.event ? window.event : e;
    if (event.type === "keydown") {
        console.log(event.keyCode);
    }
}

Codes clés pour les touches fléchées

Les codes clés associés aux touches fléchées sont :

  • Gauche : 37
  • Haut : 38
  • Droite : 39
  • Bas : 40

En utilisant ces codes clés dans votre condition, vous pouvez détecter spécifiquement pressions sur la touche fléchée :

function checkKey(e) {
    var event = window.event ? window.event : e;
    if (event.type === "keydown") {
        switch (event.keyCode) {
            case 37:
                // Left key pressed
                break;
            case 38:
                // Up key pressed
                break;
            case 39:
                // Right key pressed
                break;
            case 40:
                // Down key pressed
                break;
        }
    }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn