Прослушиватель ввода Android Chrome получает странные данныеAndroid

Форум для тех, кто программирует под Android
Anonymous
Прослушиватель ввода Android Chrome получает странные данные

Сообщение Anonymous »

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

Код: Выделить всё

const tuşaBasılıncaSuniKlavye = (hadise: Event) => {
const metinHadisesi = hadise as InputEvent;

let harf = "";
if (metinHadisesi.data !== null) {
harf = metinHadisesi.data;
}

console.log("Hadise> data: -" + harf + "- -" + harf.slice(-1) + "-");
console.log("Hadise> inputType: -" + metinHadisesi.inputType + "-");
};

metinSahası.addEventListener("input", tuşaBasılıncaSuniKlavye, false);
Теперь, если я медленно нажимаю клавиши, все работает нормально. Однако, если я нажму 1 или 2 клавиши, а затем быстро нажму пробел 2 раза, прослушиватель получит входной тип deleteContentBackward и перепутает текст внутри поля ввода.
An Пример:

Код: Выделить всё

Hadise> data: -G- -G-
Hadise> inputType: -insertText-

Hadise> data: -h- -h-
Hadise> inputType: -insertText-

Hadise> data: -- --
Hadise> inputType: -deleteContentBackward-

Hadise> data: -Gj - - -
Hadise> inputType: -insertText-
Знаете ли вы, почему это происходит? Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/785 ... weird-data

Вернуться в «Android»