VirtualKeyboard

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

VirtualKeyboard 介面屬於 VirtualKeyboard API,在具有螢幕虛擬鍵盤的裝置上非常有用,例如平板電腦、手機或其他可能沒有硬體鍵盤的裝置。

VirtualKeyboard 介面使得可以透過降低視口高度來為虛擬鍵盤騰出空間,從而選擇退出瀏覽器自動處理螢幕虛擬鍵盤的方式。您可以阻止瀏覽器改變視口大小,檢測虛擬鍵盤的位置和大小——並據此調整網頁佈局——以及以程式設計方式顯示或隱藏虛擬鍵盤。

您可以透過 navigator.virtualKeyboard 來訪問 VirtualKeyboard 介面。

EventTarget VirtualKeyboard

例項屬性

VirtualKeyboard 介面繼承了其父介面 EventTarget 的屬性。

VirtualKeyboard.boundingRect 只讀 實驗性

一個 DOMRect 物件,描述了虛擬鍵盤的幾何形狀。

VirtualKeyboard.overlaysContent 實驗性

一個 Boolean 值,定義了瀏覽器是否應停止處理螢幕虛擬鍵盤。

例項方法

VirtualKeyboard 介面繼承了其父介面 EventTarget 的方法。

VirtualKeyboard.show() 實驗性

顯示虛擬鍵盤。

VirtualKeyboard.hide() 實驗性

隱藏虛擬鍵盤。

事件

geometrychange 實驗性

當螢幕虛擬鍵盤的幾何形狀發生變化時觸發,這會在虛擬鍵盤出現或消失時發生。

示例

以下示例演示瞭如何選擇退出自動虛擬鍵盤行為,以及如何在網頁中檢測虛擬鍵盤的幾何形狀。

js
if ("virtualKeyboard" in navigator) {
  navigator.virtualKeyboard.overlaysContent = true;

  navigator.virtualKeyboard.addEventListener("geometrychange", (event) => {
    const { x, y, width, height } = event.target.boundingRect;
  });
}

規範

規範
VirtualKeyboard API
# the-virtualkeyboard-interface

瀏覽器相容性

另見