BackSpace не запускает событие keyup в Android-мобиле

Это первый раз, я работаю над mobile Apps . Событие keyUp не срабатывает Если я keyUp кнопку backspace .

Я сделал jsFiddle для справки.

Изначально пользователь вводил 23 а затем удалял пользователя 3 с помощью кнопки backspace. В то же время ввод 23 события, но во время события удаления не срабатывает.

Я использую device : motorola motog,Android Version:4.4.2 .

Как я могу это исправить, может ли кто-нибудь помочь мне с примером кода.

Проблема в том, что Chrome перестает запускать события нажатия клавиш для «backspace» с Android 4.4. Это было проблематично во многих приложениях, основанных на веб-просмотре, для поиска необходимых событий. Это небольшое облегчение от этого, используя input событие, которое срабатывает всякий раз, когда пользователь что-то набирает, вставляет что-то или нажимает кнопку «.com» на клавиатуре и т. Д.

Лучше полагаться на input событие, если вы хотите только зафиксировать изменения ввода. Это не полезно, если вы хотите предотвратить действия по умолчанию.

Для вашего дела, я думаю, он должен соответствовать. Но будьте осторожны, поддержки этого события для более ранней версии Android 4.

Обновленная скрипка – http://jsfiddle.net/aravindbaskaran/33Snz/24/

В качестве решения вы могли бы избежать использования события «ввода», как упоминалось в @aravind. Проблема заключается в том, что событие «вход» не работает с <= ie9 и некоторыми мобильными операционными устройствами. Конечно, вы можете использовать обнаружение поддержки браузеров, например, с помощью modernizr или простого фрагмента и использовать вспомогательное событие keyUp / input.

С другой стороны, вы можете использовать все события вместе, и браузер решит, какой из них он будет использовать сам по себе. Проблема в том, что в этом случае функция обратного вызова будет вызывать дважды в современных браузерах, которые поддерживают оба события.

Обходным способом является использование функции debounce для предотвращения двойного вызова.

 $('.parent').on('change keydown input', _.debounce(function() { // whatever }, 0)); 

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