Window: getScreenDetails()

Limited availability

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

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

Window インターフェイスの getScreenDetails() メソッドは、ユーザーのデバイスで利用できるすべての画面の詳細を表す ScreenDetails オブジェクトインスタンスで満たされる Promise を返します。

構文

js
getScreenDetails()

引数

なし。

返値

ScreenDetails オブジェクトインスタンスで満たされる Promise

例外

NotAllowedError DOMException

Permissions-Policy によって Window Management API の使用がブロックされている場合、またはユーザーが明示的にブラウザのパーミッションリクエストを拒否した場合にスローされます。

getScreenDetails() が呼び出されると、ユーザーに対してすべてのディスプレイでウィンドウを管理する許可を求めるダイアログが表示されます(この許可の状態は、window-management をクエリーするために Permissions.query() を使用して確認できます)。許可が与えられた場合、結果として得られる ScreenDetails オブジェクトには、ユーザーのシステムで利用可能なすべてのスクリーンの詳細が含まれています。

以下の例では、利用可能な各ディスプレイ上でフルサイズのウィンドウが開きます。

js
const screenDetails = await window.getScreenDetails();

// 端末で使用可能のすべてのスクリーンに対して、フルスクリーンのウィンドウを開きます
for (const screen of screenDetails.screens) {
  window.open(
    "https://example.com",
    "_blank",
    `left=${screen.availLeft},
    top=${screen.availTop},
    width=${screen.availWidth},
    height=${screen.availHeight}`,
  );
}

メモ: 完全な例については、マルチウィンドウ学習環境を参照してください(ソースコードも参照してください。)

仕様書

Specification
Window Management
# api-window-getScreenDetails-method

ブラウザーの互換性

BCD tables only load in the browser

関連情報