Ich programmiere ein Web-Portal für eine Set-Top-Box mit einer eigenen Tastatur.
Die Tastatur hat die meisten Standard-Zeichentasten, aber keine Rücktaste!
Da es noch andere freie benutzerdefinierte Schlüssel gibt, möchte ich eine davon in die Rücktaste abbilden, wenn ich mich in einem Eingabefeld oder in einem Textbereich befinde.
Die Frage ist: Wie programmiere ich programmgesteuert eine Rücktaste zum Eingabefeld?
Oder: Wie programmiere ich programmatisch einen beliebigen Schlüssel (wie eine Pfeiltaste) an das Eingabefeld?
Wenn Sie sich in einem Webbrowser befinden, können Sie echte Eingabeereignisse wie Tastatur- und Mausereignisse nicht fälschen (aus Sicherheitsgründen).
Sie können jedoch die anderen benutzerdefinierten Tasten, die gedrückt werden, erkennen. Sie können also auf das Ereignis onKeyDown für den zu verwendenden Schlüssel reagieren und das Eingabefeld nur aktualisieren, wenn Sie feststellen, dass es gedrückt wird ...
Angenommen, der Browser unterstützt das W3C-Ereignismodell, können Sie eine KeyEvent
erstellen und diese mithilfe der Methode dispatchEvent
des Eingabefelds versenden. Es gibt ein Beispiel (mit MouseEvent
) auf mozilla.org. Es gibt auch einige weitere Links zu wo ich diese Frage zuletzt beantwortet habe ;-)
UPDATE: Der folgende Code wurde in Firefox 3.5 getestet und führt erfolgreich einen Backspace durch die Zeichen im Textfeld:
%Vor%Verwende onkeypress und JavaScript. Im Skript können Sie nach dem eingegebenen Zeichen suchen, das der Rücktaste zugeordnet ist, und diese Operation für den Text im Feld ausführen.
Tags und Links javascript html