Mousetrap : la gestion des raccourcis clavier

Le , par FirePrawn, Expert éminent sénior
Mousetrap est une librairie indépendante sans aucune dépendance externe.
Elle a l'avantage d'être très légère : environ 1,4kb.

Grâce à cette librairie, vous allez pouvoir gérer très simplement les évènements clavier (pression sur telle ou telle touche).
Elle est compatible avec les navigateurs suivants :
  • Internet Explorer 6+
  • Firefox
  • Chrome
  • Safari


Touches supportées par la librairie

Pour les modificateurs de touches vous pouvez utilisez shift, ctrl, alt, option, meta et command.
Les autres touches spéciales sont backspace, tab, enter, return, capslock, esc, escape, space, pageup, pagedown, end, home, left, up, right, down et del.
Enfin, vous devrez être capable de référencer toutes les autres touches par leur comme par exemple a, /, $ ou encore *.

Documentation de l'API

L'API se compose de quatre méthodes principales : bind(), trigger(), reset() et init().

La méthode bind() est celle que vous utiliserez le plus. C'est celle qui permet de lier une touche à une fonction.

La méthode trigger() permet de déclencher n'importe quel événement qui a été lié à une méthode précédemment.

La méthode reset() permet de supprimer tous les événements liés à une méthode. C'est particulièrement utile lorsque vous souhaitez réinitialiser le contexte sans faire de rafraichissement de votre page. Couplé avec l'utilisation d'Ajax, cette méthode vous permettra de redéfinir vos événements.

Enfin la méthode init() permet d'initialiser les listeners globaux qui sont indispensables pour pouvoir lier des événements par la suite. Elle est appelée au chargement de la page (qui inclut mousetrap.js bien sûr) et vous n'avez pas besoin de l'utiliser manuellement.
Si jamais vous appelez mousetrap.init() sur votre page, vous risquez d'avoir un dédoublement des événements.

Pour plus d'informations, je vous invite à consulter la page officielle de la librairie Mousetrap.

Source : Mousetrap

Et vous ?

Cette librairie vous faciliterait-elle la vie dans votre gestion d'événements clavier ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de sekaijin sekaijin - Expert éminent https://www.developpez.com
le 07/07/2012 à 21:00
je travaille essentiellement avec Sencha qui intègre déjà ce genre de chose

mais ça m'a l'air bien
A+JYT
Avatar de sebounet sebounet - Futur Membre du Club https://www.developpez.com
le 30/07/2012 à 13:19
L'essentiel et légère. Va se faire intégrer dans micro.js, ca.

edit: est déjà intégrée au projet d'ailleurs.
Offres d'emploi IT
Ingénieur analyste programmeur (H/F)
Safran - Auvergne - Montluçon (03100)
Ingénieur développement fpga (traitement vidéo) H/F
Safran - Ile de France - 100 rue de Paris 91300 MASSY
Expert décisionnel business intelligence H/F
Safran - Ile de France - Évry (91090)

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique JavaScript : Xavier Lecomte -