Keymaster.js рд▓рд╛рдЗрдмреНрд░реЗрд░реА
guthub рдкрд░ рджрд┐рдЦрд╛рдИ рджреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдХрд┐рд╕реА рднреА рдкреГрд╖реНрда рдкрд░ рдХреАрдмреЛрд░реНрдб рд╢реЙрд░реНрдЯрдХрдЯ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ,
jQuery рдХреЗ Hotkeys рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╕рдорд╛рди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди keymaster.js рдХреЗ рдЕрдкрдиреЗ рдлрд╛рдпрджреЗ рд╣реИрдВ: рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдХреЛрдИ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдмрд╣реБрдд рд╣рд▓реНрдХрд╛ рд╣реИ (рдХреЛрдб рдХреА рдХреЗрд╡рд▓ 60 рд▓рд╛рдЗрдиреЗрдВ) рдФрд░ рдЬреНрдЮрд╛рдд jQuery рдХреЗ Hotkeys рдмрдЧ рд╕реЗ рдореБрдХреНрдд рд╣реИред рд╕рдм рд╕рдм рдореЗрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЙрдкрдпреЛрдЧреА рдЪреАрдЬред
рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ, keymaster.js рдПрдХ рдФрд░ INPUT / SELECT / TEXTAREA рдЪрдпрдирдХрд░реНрддрд╛ рдЬреЛрдбрд╝ рджреЗрдЧрд╛, рдпрд╣ рднреА рдПрдХ рдЙрдкрдпреЛрдЧреА рдЬреЛрдбрд╝ рд╣реЛрдЧрд╛ред
key('c', 'issues', function(){ console.log('c/issues'); }); key('command+r, ctrl+r', 'issues', function(){ console.log('Hijacked Command+R or Ctrl+R, damn!'); return false; }); key('i', function(){ keyScope('issues'); console.log('Switched to "issues" scope. Command+R or Ctrl+R is now no longer reloading...'); }); key('i', function(){ console.log('(example of multiple assignment)'); }); key('o, enter, left', function(){ console.log('o, enter or left pressed!'); }); key('ctrl+c', function(){ console.log('this is not the command line'); }); key('тМШ+right,shift+left,ctrl+shift+alt+d', function(event){ console.log('command+right, or shift+left, or ctrl+shift+alt+d'); console.log('here is the event: ', event); return false;
рдбреЗрдореЛ