Skip to content

getKeyboardHeight ​

getKeyboardHeight は、現在の画面上のキーボードの高さをピクセル単位で返すユーティリティ関数です。

この関数は、Visual Viewport API を使用してキーボードの高さを計算します。 Visual Viewport に対応したモダンな環境 (Safari / WKWebView 14 以降、Chrome / Android WebView 80 以降)を前提としています。

キーボードの高さは、次の式で計算します。 window.innerHeight - visualViewport.height - visualViewport.offsetTop

offsetTop を差し引くのは、キーボードが表示されるとビジュアルビューポートが 上下に移動することがある iOS の挙動に正しく対応するためです。

インターフェース ​

ts
function getKeyboardHeight(): number;

パラメータ ​

この関数はパラメータを受け取りません。

戻り値 ​

  • number

    キーボードの高さ(ピクセル単位)。キーボードが表示されていない場合は 0 を返します。

使用例 ​

tsx
const height = getKeyboardHeight();

if (height > 0) {
  footer.style.paddingBottom = `${height}px`;
}

MIT ライセンスの下で配布されています。