Модуль y5.ShortCut

Функции для обработки клавиатурных сокращений

Требует загрузки модуля ShortCuts.

Пример:

Предопределенные константы клавиш:

  F1  BACKSPACE END          PLUS_NUM
  F2  TAB       HOME         MINUS
  F3  ENTER     LEFT_ARROW   MINUS_NUM
  F4  SHIFT     UP_ARROW     NUM_1
  F5  CTRL      RIGHT_ARROW  NUM_LOCK
  F6  ALT       DOWN_ARROW   SCROLL_LOCK
  F7  PAUSE     INSERT       SLASH
  F8  CAPS_LOCK DELETE       ASTERISK
  F9  ESC       PLUS         BS
  F10 SPACE     LEFT_WINDOW
  F11 PAGE_UP   RIGHT_WINDOW
  F12 PAGE_DOWN SELECT

Вызов функций:
y5.ShortCut.down([Key, Key], Callback, Node, Options);

Примеры сочетаний:
'h'
'ctrl+h'
['ctrl+h','alt+b']
{ctrl: true, ch: 'h'}
{ctrl: true, key: y5.ShortCut.ESC}
[{ctrl: true, ch: 'h'}, {alt: true, ch: 'b'}]
['ctl+h', {alt: true, ch: 'b'}]
'alt+f1'
'ctrl + alt + shift + h'

Пример вызова:
y5.ShortCut.down([{ch: 'a', ctrl: true}], function() { alert('Ctrl+A'); }, document);
y5.ShortCut.down([{key: y5.ShortCut.ESC}], function() { alert('Esc'); }, document);

Объект Key:
{
   key: code,              // числовой код клавиши
   ch: char,               // символ клавиши, например 'A'
   ctrl: (true | false),   // зажата клавиша Ctrl
   alt: (true | false),    // зажата клавиша Alt
   shift: (true | false),  // зажата клавиша Shift
}

Если указано свойство key, то свойство ch игнорируется.
Свойства ctrl, alt, shift являются необязательными.

Объект Options:
{
   checkTarget: (true | false),     // проверять целевой элемент (если true (по умолчанию),
                                    // то не вызывать Callback на полях ввода)
   preventDefault: (true | false),  // запрещать выполнять действие по умолчанию, которое
                                    // установлено для документа на нажатие клавиши (true по умолчанию)
   context: (null | context),       // контекст в котором будет выполнена функция Callback
                                    // (контекста по умолчанию нет)
   once: (false | true)             // обработать сочетание один раз, затем удалить (false по умолчанию)
}

down

y5.ShortCut.down(keys, callback, node, options) -> Object — экземпляр класса ShortCutListener

Устанавливает сокращение на нажатие клавиши.

Имя аргументаТипОписание
keysArray of Keysсписок сочетаний клавиш
callbackFunctionфункция обработки нажатия клавиш
nodeNodeцелевой элемент
optionsObjectпараметры

Пример:

y5.ShortCut.down([{key: y5.ShortCut.ESC}], function() { alert('Esc'); }, document);

press

y5.ShortCut.press(keys, callback, node, options) -> Object — экземпляр класса ShortCutListener

Устанавливает сокращение на повтор нажатия клавиши.

Имя аргументаТипОписание
keysArray of Keysсписок сочетаний клавиш
callbackFunctionфункция обработки нажатия клавиш
nodeNodeцелевой элемент
optionsObjectпараметры

Пример:

y5.ShortCut.press([{key: y5.ShortCut.ESC}], function() { alert('Esc'); }, document);

remove

y5.ShortCut.remove(shortcut) -> Boolean

Удаляет сокращение.

Имя аргументаТипОписание
shortcutObject

removeDown

y5.ShortCut.removeDown(shortcut) -> Boolean

Удаляет сокращение из списка обработки нажатий.

Имя аргументаТипОписание
shortcutObject

removePress

y5.ShortCut.removePress(shortcut) -> Boolean

Удаляет сокращение из списка обработки повтора нажатий.

Имя аргументаТипОписание
shortcutObject