Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Keyboard

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Das Keyboard Interface der Keyboard API bietet Funktionen, die Tastaturlayout-Karten abrufen und das Erfassen von Tastendrücken von der physischen Tastatur umschalten können.

Eine Liste gültiger Code-Werte findet sich in der UI Events KeyboardEvent code Values Spezifikation.

EventTarget Keyboard

Instanz-Eigenschaften

Erbt auch Eigenschaften von seinem Eltern-Interface, EventTarget.

Instanz-Methoden

Erbt auch Methoden von seinem Eltern-Interface, EventTarget.

Keyboard.getLayoutMap()

Gibt ein Promise zurück, das mit einer Instanz von KeyboardLayoutMap aufgelöst wird, welches ein map-ähnliches Objekt mit Funktionen zum Abrufen der Strings ist, die mit bestimmten physischen Tasten verbunden sind.

Keyboard.lock()

Gibt ein Promise zurück, das nach der Aktivierung der Erfassung von Tastendrücken für eine oder alle Tasten auf der physischen Tastatur aufgelöst wird.

Keyboard.unlock()

Entsperrt alle durch die Methode lock() erfassten Tasten und gibt synchron zurück.

Beispiel

Tastaturzuordnung

Das folgende Beispiel zeigt, wie man den positions- oder layout-spezifischen String erhält, der mit der Taste korrespondiert, die der 'W'-Taste auf einer englischen QWERTY-Tastatur entspricht.

js
if (navigator.keyboard) {
  const keyboard = navigator.keyboard;
  keyboard.getLayoutMap().then((keyboardLayoutMap) => {
    const upKey = keyboardLayoutMap.get("KeyW");
    window.alert(`Press ${upKey} to move up.`);
  });
} else {
  // Do something else.
}

Tastatursperre

Das folgende Beispiel erfasst die W-, A-, S- und D-Tasten, indem lock() mit einer Liste aufgerufen wird, die den Schlüsselattributwert für jede dieser Tasten enthält:

js
navigator.keyboard.lock(["KeyW", "KeyA", "KeyS", "KeyD"]);

Dies erfasst diese Tasten unabhängig davon, welche Modifikatoren beim Tastendruck verwendet werden. Angenommen, es handelt sich um ein standardmäßiges US-englisches QWERTY-Layout, stellt das Registrieren von KeyW sicher, dass W, Shift+W, Control+W, Control+Shift+W und alle anderen Tastenkombinationen mit W an die App gesendet werden. Dasselbe gilt für KeyA, KeyS und KeyD.

Spezifikationen

Spezifikation
Keyboard Map
# keyboard-interface
Keyboard Lock
# keyboard-interface

Browser-Kompatibilität