228 votes

Comment capturer une clé de commande d'un Mac via Javascript?

Comment capturer une clé de commande d'un Mac via Javascript?

303voto

Ilya Semenov Points 1195

Contrairement à Ctrl/Alt/Shift, clé Mac/Apple n’est pas considéré comme une touche de modification--au lieu de cela, vous devez accrocher sur keydown/keyup et base d’enregistrements lorsqu’une touche est enfoncée et puis déprimée sur event.keyCode.

Malheureusement, ces codes de touche sont dépendantes du navigateur :

Vous pourriez être intéressé par la lecture de cet article : folie JavaScript : événements de clavier d'où j’ai maîtrisé cette connaissance.

227voto

Sunny Points 1468

Vous pouvez également regarder les `` attribuent l’événement si vous travaillez avec des événements keydown. A fonctionné à merveille pour moi ! Vous pouvez l’essayer ici.

16voto

J’ai trouvé que vous pouvez détecter la touche Commande enfoncée dans la dernière version de Safari (7.0 : 9537.71) si vous appuyez en même temps avec une autre touche. Par exemple, si vous voulez détecter ⌘ + x :, vous pouvez détecter la touche x et vérifier si event.metaKey a la valeur true. Par exemple :

Lorsque vous appuyez sur x sur son propre, cela va afficher . Lorsque vous appuyez sur ⌘ + x, il sera de sortie

Cela semble seulement travailler dans Safari - pas le Chrome

7voto

Koen. Points 3570

Pour les personnes utilisant jQuery, il y a un excellent plugin pour gérer les événements clés :

jQuery hotkeys sur GitHub

Pour capturer + S et Ctrl + S j’utilise ceci :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X