Почему я получаю только некоторые события виртуальной клавиатуры при отладке моего телефона Android? - PullRequest
0 голосов
/ 30 мая 2019

Я создаю веб-страницу, используя JQuery, а не приложение для телефона.

У меня есть элемент ввода текста (текста), который обрабатывает события клавиатуры для создания списка HTML. Он отлично работает на рабочем столе и на моем телефоне Android с каждым браузером, который я могу найти.

Но когда я пытаюсь использовать удаленную отладку Chrome, он прекращает отправку событий клавиатуры после первых нескольких.

Все работает на рабочем столе (Chrome / FF dev / IE) и телефоне (два Firefox, две Opera, Dolphin, Mint, Puffin и Chrome). В частности, то, что я набираю на виртуальной клавиатуре, сразу же появляется во вводе на странице. Я знаю, что скрипт получает события клавиатуры, потому что появляется список (после четырех символов, что он и должен делать).

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

Я попытался присоединить слушателей к длинному списку возможных событий, чтобы посмотреть, посылает ли виртуальная клавиатура «что-то еще» после первого символа. Моя запись keybd появляется в списке предложений чуть выше клавиатуры, но кажется, что никакие события не отправляются глобальным или локальным объектам после первого. $ ('# input'). click (function (e) {

    var  name = '';

    //  get the name by dereferencing 'e'

    console.log('OnClick: ' + name );

}

$('#input').keydown( function( e ) {

var  key = '';

//  get the key by dereferencing 'e'
//     example:
//  key = e.originalEvent.srcElement.value;

console.log('OnKeydown: ');

}

// I have tried adding numerous Event listeners to the Global object (or local) w/o JQuery like this:

self.addEventListener("dispatchKeyEvent", function  ( e ) {
console.log('GLOBAL dispatchKeyEvent');

});

self.addEventListener("OnKeyListener ", function  ( e ) {
console.log('GLOBAL OnKeyListener ');

});

// ... just to see if it is sending other kinds of events that I am missing.

Я ожидаю получить события от виртуального ключа во время удаленной отладки. Я получаю первые несколько событий click и onkeydown, а затем ничего.

Я не получаю сообщений об ошибках или предупреждений. Единственные «подробные» сообщения предположительно вызваны точками останова в моем коде.

[Violation] 'setTimeout' handler took 65ms
(index):866 OnClick
(index):866 OnClick Key: undefined
jquery-3.3.1.min.js:2 
[Violation] 'click' handler took 2416ms
(index):866 OnKeydown
(index):866 Key: C
jquery-3.3.1.min.js:2 
[Violation] 'keydown' handler took 2738ms

и вот где он умирает ... если я не нажму на вход снова.

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