После просмотра документации Dojo 1.10 для dojo/on
и dojo/keys
я все еще не понимаю, как обрабатывать событие для комбинации клавиш, такой как Ctrl + N .
on(document, "keydown", function (evt) {
var charOrCode = evt.charCode || evt.keyCode;
// capture Ctrl+N
if (evt.ctrlKey && charOrCode === 78 /* This works, but doesn't use the keys module */) {
Dojo имеет константы в keys
для других клавиш, таких как keys.ENTER
, но в документации нет таких клавиш для букв в документации,Точно так же нет примеров обработки комбинаций клавиш.Не представляется правильным использовать жестко keyCode
, поскольку это свойство устарело .Одной из основных целей Dojo является кросс-браузерная совместимость.
Нужно ли устанавливать флаг при нажатии клавиши Ctrl и обрабатывать события клавиатуры как два отдельных события, если я хочубыть кросс-браузерным?Я думаю, что должен быть более простой способ ...
Вот почему существуют модули ключей. (см. Большие таблицы различий между браузерами)