Element: keypress Event
Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.
Das keypress
-Ereignis wird ausgelöst, wenn eine Buchstaben-, Zahlen-, Interpunktions- oder Symboltaste gedrückt wird, oder wenn die Enter-Taste gedrückt wird — einschließlich wenn die Enter-Taste in Kombination mit der Shift- oder Ctrl-Taste gedrückt wird. Wird jedoch eine Modifikatortaste wie die Alt-, Shift-, Ctrl-, Meta-, Esc- oder Option-Taste isoliert gedrückt, wird das keypress
-Ereignis nicht ausgelöst.
Warnung:
Da dieses Ereignis veraltet ist, sollten Sie stattdessen beforeinput
oder keydown
verwenden.
Das Ereignis bubbles. Es kann Document
und Window
erreichen.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
, oder setzen Sie eine Event-Handler-Eigenschaft.
addEventListener("keypress", (event) => { })
onkeypress = (event) => { }
Ereignistyp
Ein KeyboardEvent
. Erbt von UIEvent
und Event
.
Ereigniseigenschaften
Diese Schnittstelle erbt auch Eigenschaften ihrer Eltern, UIEvent
und Event
.
KeyboardEvent.altKey
Schreibgeschützt-
Gibt einen booleschen Wert zurück, der
true
ist, wenn die Alt-Taste (Option oder ⌥ auf macOS) aktiv war, als das Tastaturereignis erzeugt wurde. KeyboardEvent.code
Schreibgeschützt-
Gibt einen String mit dem Code-Wert der physischen Taste zurück, die durch das Ereignis dargestellt wird.
KeyboardEvent.ctrlKey
Schreibgeschützt-
Gibt einen booleschen Wert zurück, der
true
ist, wenn die Ctrl-Taste aktiv war, als das Tastaturereignis erzeugt wurde. KeyboardEvent.isComposing
Schreibgeschützt-
Gibt einen booleschen Wert zurück, der
true
ist, wenn das Ereignis zwischencompositionstart
undcompositionend
ausgelöst wird. KeyboardEvent.key
Schreibgeschützt-
Gibt einen String zurück, der den Tastenwert der Taste darstellt, die durch das Ereignis dargestellt wird.
KeyboardEvent.location
Schreibgeschützt-
Gibt eine Zahl zurück, die den Ort der Taste auf der Tastatur oder einem anderen Eingabegerät darstellt. Eine Liste der Konstanten, die die Positionen identifizieren, wird in Tastaturpositionen angezeigt.
KeyboardEvent.metaKey
Schreibgeschützt-
Gibt einen booleschen Wert zurück, der
true
ist, wenn die Meta-Taste (auf Mac-Tastaturen die ⌘ Command-Taste; auf Windows-Tastaturen die Windows-Taste (⊞)) aktiv war, als das Tastaturereignis erzeugt wurde. KeyboardEvent.repeat
Schreibgeschützt-
Gibt einen booleschen Wert zurück, der
true
ist, wenn die Taste gehalten wird, sodass sie automatisch wiederholt wird. KeyboardEvent.shiftKey
Schreibgeschützt-
Gibt einen booleschen Wert zurück, der
true
ist, wenn die Shift-Taste aktiv war, als das Tastaturereignis erzeugt wurde.
Beispiele
addEventListener keypress Beispiel
Dieses Beispiel protokolliert den Wert von KeyboardEvent.code
, wann immer Sie eine Taste drücken, nachdem Sie das <input>
-Element fokussiert haben.
Um zu sehen, welche Tasten ein keypress
-Ereignis auslösen, und welche Tasten dies nicht tun, versuchen Sie, die folgenden zu drücken:
- Buchstabentasten, Zahlentasten und Interpunktionstasten
- Symboltasten wie die $-, +-, =-, %- und +-Tasten
- Modifikatortasten wie die Alt-, Shift-, Ctrl-, Meta-, Esc-, Option- oder ⌘-Tasten
- die Enter-Taste
- die Enter-Taste in Kombination mit den Shift- oder Ctrl-Tasten
- die Enter-Taste in Kombination mit anderen Modifikatortasten als den Shift- oder Ctrl-Tasten
<div>
<label for="sample">Focus the input and type something:</label>
<input type="text" name="text" id="sample" />
</div>
<p id="log"></p>
const log = document.getElementById("log");
const input = document.querySelector("input");
input.addEventListener("keypress", logKey);
function logKey(e) {
log.textContent += ` ${e.code}`;
}
Äquivalent zu onkeypress
input.onkeypress = logKey;
Spezifikationen
Specification |
---|
UI Events # event-type-keypress |
HTML # handler-onkeypress |