Опубликованный на Гитхабе список изменений позволяет уверенно огласить вот что: важнейшим из достоинств новой версии стала возможность ловить события не только во всём окне в целом, но и для одного или нескольких отдельных элементов DOM. Теперь и при программировании различающихся реакций у различных элементов
Возможности же эти вот каковы:
- Реакция на нажатие и отпускание одной или нескольких клавиш. Поддерживаются синонимы
кросс-платформенные (например, "meta" означает "cmd"или "ctrl" в зависимости от системы) и шифтовые (например, "@" означает сочетание Shift и двойки).
- Программируемые сочетания клавиш могут включать в себя не только классические модификаторы ("meta", "alt", "option", "ctrl", "shift", "cmd"), но и какие угодно другие клавиши. Например, программируя
WASD-управление пошаговою бродилкою, нетрудно достигнуть того, чтобы нажатие и отпусканиеклавиши «W» означало шаг вперёд,но «W» и «D» совместно — шаг по диагоналивперёд+направо.
- Возможно указание сочетаний клавиш, состоящих не из одновременных,
а из последовательных нажатий клавиш. Это такие сочетания, каккод Конами, например.
- Специальные «считающие» комбинации позволяют программировать такие ситуации, в которых нажатие основной клавиши обнуляет некоторый счётчик, а каждое нажатие дополнительной клавиши (при удержании основной) увеличивает этот счётчик на единицу. David Mauro (автор Keypress) приводит в пример такое сочетание
Tab+Space, при котором нажатие Tab тотчас же открывает первую вкладку в некотором наборе вкладок, а каждое нажатие на пробел (при удержании Tab) перебрасывает на следующую вкладку — на вторую, на третью, на четвёртую…
Для каждой одиночной клавиши (или для комбинации) возможны дополнительные настройки. Эти настройки позволяют при необходимости сделать вот что: