Scurtături din taste cu JavaScript


Că sunt un fan al combinaţiilor de taste nu cred că mai trebuie să spun celor ce citesc CNet.ro de ceva vreme. Le folosesc în mai toate programele (în cele care – evident – oferă aşa ceva). Şi cum într-o webaplicaţie pe care o dezvolt de ceva vreme stau cam mult/des, m-am gândit: de ce să nu îmi grăbesc navigarea cu scurtături din taste? La unul dintre blogurile de care mă ocup am adăugat facilitatea, cu pluginul jQuery shortKeys, să navighezi din taste la următorul articol, sau la anteriorul. Dar… pluginul cu pricina merge şi nu merge…

imagine

Săpând pe net am dat de o bibliotecă JavaScript care nici nu are vreun nume, ci fişierul de folosit se numeşte simplu shortcuts.js. Nu am testat, dar există şi un plugin jQuery asociat acestei biblioteci: jQuery Keyboard Hooker Plugin. Eu am folosit nativ shortcuts.js şi sunt impresionat. O simplă includere a fişierului şi apoi definiţii precum e ilustrat în captura de mai sus. Cum webaplicaţia la care m-am referit la început are mai multe secţiuni, cu Alt+1, Alt+2 ş.a.m.d. sar rapid la secţiunea dorită! Am şi o boxă de căutare ce mă duce la fişele dorite… mi-am pus C să mă ducă la boxa de căutare! Combinaţiile de taste merg brici. Singurul regret este că, în timp ce această soluţie permite şi combinaţii gen Ctrl-Alt-N, nu permite suite ca soluţia pomenită la început, gen M+N (adică apăsarea tastei M, şi, fără ridicarea degetului, urmată de apăsarea tastei N). Dar  mai bine o soluţie care – la mine cel puţin – merge mereu, decât una cu opţiuni mai multe dar care ba merg, ba nu merg.

Dacă aveţi o webaplicaţie în dezvoltare vă recomand cu mare căldură biblioteca pentru scurtături din taste de pe OpenJS.com.

PS: Dacă veţi asocia, ca mine, tasta C la o acţiune, puteţi indica să nu se activeze când scrieţi ceva cu c într-un formular.


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (Neevaluat încă)
Loading...Loading...

1 comentariu

  1. softx1 spune:

    Ceva interesant!


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *