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 der Keyboard Schnittstelle gibt ein Promise zurück, das nach Aktivierung der Erfassung von Tastenanschlägen für eine oder alle Tasten auf der physischen Tastatur erfüllt wird. Diese Methode kann nur Tasten erfassen, die vom zugrunde liegenden Betriebssystem Zugriff erhalten haben.

Wenn lock() mehrmals aufgerufen wird, werden nur die in dem jüngsten Aufruf angegebenen Tasten-Codes gesperrt. Alle Tasten, die durch einen früheren 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 sind, werden alle Tasten gesperrt. Eine Liste gültiger Code-Werte befindet sich in der Spezifikation UI Events KeyboardEvent code Values.

Rückgabewert

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

Ausnahmen

AbortError DOMException

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

InvalidAccessError DOMException

Wird ausgelöst, wenn irgendein Schlüssel in keyCodes kein gültiger key code attribute value ist.

InvalidStateError DOMException

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

Sicherheit

Vorübergehende Benutzeraktivierung ist erforderlich. Der Benutzer muss mit der Seite oder einem Benutzeroberflächenelement interagieren, damit diese Funktion funktioniert.

Beispiele

Erfassen aller Tasten

Das folgende Beispiel erfasst alle Tastenanschläge.

js
navigator.keyboard.lock();

Erfassen spezifischer Tasten

Das folgende Beispiel erfasst die Tasten "W", "A", "S" und "D". Es erfasst diese Tasten unabhängig davon, welche Modifikatoren mit dem Tastendruck verwendet werden. Angenommen, ein standardmäßiges US-QWERTY Layout, die Registrierung mit "KeyW" stellt sicher, dass "W", Umschalt+"W", Strg+"W", Strg+Umschalt+"W" und alle anderen Tastenkombinationen mit "W" an die Anwendung gesendet werden. Das Gleiche 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