Мне нужно остановить распространение ключа «Enter» - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть обработчик событий, который отслеживает клавиатуру и мышь, чтобы рисовать и манипулировать ограничивающим прямоугольником на холсте. Клавиша «Ввод» используется для завершения процесса и выдает блок мыши для дальнейшей обработки. Все хорошо к этому моменту. Проблема в том, что при переключении запускается последняя использованная кнопка, как будто она только что нажала клавишу «Ввод», которую я отслеживал. Хотя это было трудно отладить, исправить это еще сложнее - по крайней мере, для меня. Мое решение на данный момент:

      when 'Enter'
        eraseCanvas(G.ctx)
        document.getElementById('antifocus').focus() # TODO fix this hack!
        goBox()

Используемый здесь элемент - это скрытый кнопка нулевого размера. Это, кажется, безопасно съесть нажатие клавиши, не мешая. Тем не менее, должен быть лучший способ! Это один из наименее элегантных фрагментов кода, который я когда-либо писал. Кто-нибудь, пожалуйста, спаси меня от себя? NB Это написано в CoffeeScript…

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...