La détection des pressions sur les touches est une tâche courante dans le développement Web, en particulier lors de la création de contrôles interactifs. Alors que la plupart des touches peuvent être détectées avec précision à l'aide de l'écouteur d'événements onkeypress, les touches fléchées posent un défi unique. Cet article explique pourquoi les touches fléchées ne peuvent pas être détectées à l'aide de onkeypress et fournit une solution simple pour capturer les pressions sur les touches fléchées en JavaScript.
Lorsque vous utilisez onkeypress pour détecter les pressions sur les touches, cela fonctionne parfaitement pour la plupart des clés. Cependant, les touches fléchées (gauche, haut, droite, bas) ne déclenchent pas l'événement onkeypress. En effet, les navigateurs gèrent les touches fléchées différemment, initiant le comportement de défilement par défaut.
Pour détecter les pressions sur les touches fléchées, vous devez utiliser l'écouteur d'événement onkeydown au lieu de onkeypress. L'événement onkeydown se déclenche chaque fois qu'une touche est enfoncée, y compris les touches fléchées. Voici une version mise à jour de votre extrait de code à l'aide de onkeydown :
function checkKey(e) { var event = window.event ? window.event : e; console.log(event.keyCode); }
Pour identifier des touches fléchées spécifiques, vous pouvez utiliser leurs codes clés correspondants :
En comparant le event.keyCode à ces valeurs, vous pouvez facilement déterminer quelle touche fléchée a été enfoncée.
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!