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: lock() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

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.

Die lock() Methode des Keyboard Interfaces gibt ein Promise zurück, das sich erfüllt, nachdem das Erfassen von Tastendrücken für einen oder alle Tasten auf der physischen Tastatur aktiviert wurde. Diese Methode kann nur Tasten erfassen, für die das zugrunde liegende Betriebssystem Zugriff gewährt.

Wenn lock() mehrmals aufgerufen wird, werden nur die Tasten-Codes gesperrt, die im letzten Aufruf angegeben wurden. Alle Tasten, die durch einen vorherigen Aufruf von lock() gesperrt wurden, werden entsperrt.

Syntax

js
lock()
lock(keyCodes)

Parameter

keyCodes Optional

Ein Array von einem oder mehreren zu sperrenden Tasten-Codes. Wenn keine Tasten-Codes angegeben werden, werden alle Tasten gesperrt. Eine Liste gültiger Code-Werte findet sich in der UI Events KeyboardEvent code Values Spezifikation.

Rückgabewert

Ein Promise das mit undefined erfüllt wird, wenn die Sperre erfolgreich war.

Ausnahmen

AbortError DOMException

Wird ausgelöst, wenn ein neuer Aufruf von lock() erfolgt, bevor der aktuelle abgeschlossen ist.

InvalidAccessError DOMException

Wird ausgelöst, wenn irgendeine Taste in keyCodes kein gültiger key code attribute value ist.

InvalidStateError DOMException

Wird ausgelöst, wenn lock() nicht in einem aktiven, obersten Browsing-Kontext aufgerufen wird.

Sicherheit

Vorübergehende Benutzeraktivierung ist erforderlich. Der Benutzer muss mit der Seite oder einem UI-Element interagieren, damit diese Funktion funktioniert.

Beispiele

Erfassen aller Tasten

Das folgende Beispiel erfasst alle Tastendrücke.

js
navigator.keyboard.lock();

Erfassen spezifischer Tasten

Das folgende Beispiel erfasst die Tasten W, A, S und D. Diese Tasten werden unabhängig davon erfasst, welche Modifikatoren bei der Tastenbetätigung verwendet werden. Bei einem Standard-US-QWERTY-Layout sorgt die Registrierung von "KeyW" dafür, dass W, Shift+W, Control+W, Control+Shift+W und alle anderen Tastenmodifikator-Kombinationen mit W an die App gesendet werden. Dasselbe gilt für "KeyA", "KeyS" und "KeyD".

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

Spezifikationen

Specification
Keyboard Lock
# h-keyboard-lock

Browser-Kompatibilität