/ / Verwenden Sie die Tastatur und jQuery $ (Dokument) .keypress () auf Touch-Geräten - Javascript, jQuery, Tastatur, Android-Softkeyboard

Verwenden Sie keyboard und jQuery $ (document) .keypress () auf Touch-Geräten - Javascript, Jquery, Tastatur, Android-Softkeyboard

Meine Seite muss auch auf Touch-Geräten über die Tastatur gesteuert werden. Ich habe ein BUTTON-Element eingefügt, das ein INPUT-Element fokussiert. Das funktioniert, das Sofkeyboard wird angezeigt.

$("button").click(function() {
$(this).next().focus();
});

Aber das $ (document) .keypress () wird in Chrome für Android nicht ausgelöst, solange das INPUT-Element den Fokus hat.

$(document).keypress(function(e) {
var char = (typeof e.which == "number") ? e.which : e.keyCode;
$("body").append(char);
});

Ich könnte die Ereignisse auf dem INPUT-Element verfolgen, aber dann habe ich auf vielen Geräten doppelte Eingänge.

Antworten:

0 für die Antwort № 1

Die Lösung besteht darin, INPUT-Elemente und zu erstellenBindungsfunktionen für die "Eingabe" -Ereignisse der INPUT-Elemente. Sie speichern die meisten Eingaben. Um sicherzustellen, dass keine doppelten Eingaben von "keyup" und "input" erfolgen, wird das Ereignis "keyup" nur verwendet, wenn das Element INPUT nicht den Fokus hat.