VirtualKeyboard: show() 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 show()
-Methode der VirtualKeyboard
-Schnittstelle zeigt programmatisch die virtuelle Bildschirmtastatur an. Dies ist nützlich, wenn die Seite ihre eigene Logik für die virtuelle Tastatur implementieren muss, insbesondere bei der Verwendung des virtualkeyboardpolicy
-Attributs auf contenteditable
-Elementen, wie im Abschnitt Die virtuelle Tastatur auf contenteditable
-Elementen steuern erläutert wird.
Diese Methode funktioniert nur, wenn das aktuell fokussierte Element ein Formularelement ist — wie ein <input>
oder <textarea>
Element — oder wenn das fokussierte Element contenteditable
ist und das Attribut virtualKeyboardPolicy
des aktuell fokussierten Elements auf manual
gesetzt ist und inputmode
nicht auf none
gesetzt ist.
Die show()
-Methode gibt immer undefined
zurück und löst ein geometrychange
-Ereignis aus.
Syntax
show()
Parameter
Keine.
Rückgabewert
Undefined.
Beispiel
Der folgende Codeausschnitt zeigt, wie das virtualkeyboardpolicy
-Attribut verwendet wird, um den Browser daran zu hindern, die virtuelle Tastatur bei Klick oder Tippen anzuzeigen. Der Code verwendet auch die Methoden navigator.virtualKeyboard.show()
und navigator.virtualKeyboard.hide()
, um die virtuelle Tastatur anzuzeigen und auszublenden, wenn ein Button geklickt wird:
<div contenteditable virtualkeyboardpolicy="manual" id="editor"></div>
<button id="edit-button">Edit</button>
if ("virtualKeyboard" in navigator) {
const editor = document.getElementById("editor");
const editButton = document.getElementById("edit-button");
let isEditing = false;
editButton.addEventListener("click", () => {
if (isEditing) {
navigator.virtualKeyboard.hide();
editButton.textContent = "Edit";
} else {
editor.focus();
navigator.virtualKeyboard.show();
editButton.textContent = "Save changes";
}
isEditing = !isEditing;
});
}
Spezifikationen
Specification |
---|
VirtualKeyboard API # dom-virtualkeyboard-show |