Keyup не срабатывает, когда keydown открывает предупреждение

У меня есть два обработчика событий, один для keydown и один для keyup. Обработчик события keydown вызывает предупреждающее сообщение, но это предотвращает запуск события keyup.

Вы можете увидеть очень простой пример здесь:http://jsfiddle.net/boblauer/jaGwT/ Когда нажатие клавиши открывает предупреждение, оно не срабатывает, но когда предупреждение не открывается, оно срабатывает. Вот's код из jsfiddle:

var i = 0;
window.addEventListener('keydown', function(e) {
    if (i++ % 2) alert('down');
    console.log('down');
});

window.addEventListener('keyup', function(e) {
    alert('up');
    console.log('up');
});

У меня есть библиотека, которая поддерживает прослушивание нескольких комбинаций клавиш (например, 'д + ф '), поэтому, когда клавиша нажата, мне нужно добавить ее в список клавиш, которые в данный момент нажаты, а когда клавиша отпущена, мне нужно удалить ее из указанного списка. Проблема яЕсли я хочу, чтобы при одновременном нажатии клавиш d + f отображалось предупреждение, мой код для удаления этих клавиш изв настоящее время нажата list никогда не запускается, потому что мой обработчик keyup никогда не вызывается.

Я могу'Я не думаю, что хорошо обойти эту проблему. Есть идеи?

Ответы на вопрос(1)

Ваш ответ на вопрос