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.

js
addEventListener("keypress", (event) => { })

onkeypress = (event) => { }

Ereignistyp

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 zwischen compositionstart und compositionend 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
html
<div>
  <label for="sample">Focus the input and type something:</label>
  <input type="text" name="text" id="sample" />
</div>
<p id="log"></p>
js
const log = document.getElementById("log");
const input = document.querySelector("input");

input.addEventListener("keypress", logKey);

function logKey(e) {
  log.textContent += ` ${e.code}`;
}

Äquivalent zu onkeypress

js
input.onkeypress = logKey;

Spezifikationen

Specification
UI Events
# event-type-keypress
HTML
# handler-onkeypress

Browser-Kompatibilität

Siehe auch