--- title: options_ui slug: Mozilla/Add-ons/WebExtensions/manifest.json/options_ui tags: - Add-ons - Extensions - WebExtensions translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/options_ui ---
型 | Object |
---|---|
必須 | いいえ |
例 |
"options_ui": { "page": "options/options.html" } |
options_ui
キーは、拡張機能のオプションページを定義するために使用します。
オプションページは、拡張機能の設定を含みます。オプションページはブラウザーのアドオンマネージャー、または拡張機能内で {{WebExtAPIRef("runtime.openOptionsPage()")}} を使用することでアクセスできます。
options_ui
を拡張機能にパッケージされた HTML ファイルへのパスとして指定します。通常のウェブページのように、HTML、CSS、JavaScript ファイルを含めることができます。しかし、通常のページと異なり、拡張機能が権限を持つすべての WebExtension API を使用できます。しかし、バックグラウンドスクリプトとは異なるスコープで実行されます。
オプションページとバックグラウンドスクリプトの JavaScript 上で、データや関数を共有したい場合、{{WebExtAPIRef("extension.getBackgroundPage()")}} を使用してバックグラウンドスクリプトの Window への参照を直接取得するか、{{WebExtAPIRef("extension.getViews()")}} で拡張機能内で実行されているいずれかのページの {{domxref("Window")}} を取得します。あるいは、JavaScript で runtime.sendMessage()
や runtime.onMessage
、runtime.connect()
を使用することで、オプションページとバックグラウンドスクリプト間で相互にコミュニケーションできます。後者の方法 (や同等の runtime.Port
) でも バックグラウンドスクリプトとコンテンツスクリプトとでオプションを共有できます。
一般的に、オプションページで変更されたオプションは、storage API を使用して、storage.sync (ユーザーがログインしているすべてのブラウザーインスタンス間で設定を同期する場合) か storage.local (現在のマシン / プロファイルのローカル設定にする場合) のいずれかに保存します。バックグラウンドスクリプトに変更を通知する必要がある場合、バックグラウンドスクリプトで storage.onChanged にリスナーを追加します。
options_ui
キーは次のコンテンツを持つオブジェクトです:
名前 | 型 | 説明 |
---|---|---|
browser_style |
Boolean |
省略可能。既定では これを使ってページにブラウザーの UI と Firefox では、chrome://browser/content/extension.css か、OS X では chrome://browser/content/extension-mac.css でスタイルシートを見ることができる。 Firefox Style Guide はポップアップ内の要素が特定のスタイルを取るために適用させるクラスを説明している。 |
open_in_tab |
Boolean |
省略可能。既定値は
|
page |
String |
必須。 オプションページの仕様を含む HTML ファイルへのパス。 パスは manifest.json 自体への相対パス。 |
"options_ui": { "page": "options/options.html" }
{{Compat("webextensions.manifest.options_ui")}}