options_ui

Typ Object
Obligatorisch Nein
Manifest-Version 2 oder höher
Beispiel
json
"options_ui": {
  "page": "options/options.html"
}

Verwenden Sie den options_ui-Schlüssel, um eine Optionsseite für Ihre Erweiterung zu definieren. Diese Seite wird verwendet, um Benutzern zu ermöglichen, die Einstellungen Ihrer Erweiterung zu ändern.

Die Art und Weise, wie der Benutzer die Seite öffnet, ist browserabhängig und hängt auch von der Einstellung open_in_tab ab. Ihre Erweiterung kann die Seite auch mit runtime.openOptionsPage() öffnen.

Sie geben options_ui als Pfad zu einer HTML-Datei an, die mit Ihrer Erweiterung gepackt ist. Die HTML-Datei kann CSS- und JavaScript-Dateien enthalten, ähnlich wie eine normale Webseite. Im Gegensatz zu einer normalen Seite kann das JavaScript jedoch alle WebExtension-APIs verwenden, für die die Erweiterung Berechtigungen hat. Es läuft jedoch in einem anderen Bereich als Ihre Hintergrundskripte.

Wenn Sie Daten oder Funktionen zwischen dem JavaScript auf Ihrer Optionsseite und Ihrem Hintergrundskript(en) teilen möchten, können Sie dies direkt tun, indem Sie einen Bezug auf das Window Ihrer Hintergrundskripte mit extension.getBackgroundPage() oder einen Bezug auf das Window einer der Seiten, die innerhalb Ihrer Erweiterung laufen, mit extension.getViews() erhalten. Alternativ können Sie zwischen dem JavaScript für Ihre Optionsseite und Ihrem Hintergrundskript(en) mit runtime.sendMessage(), runtime.onMessage oder runtime.connect() kommunizieren. Letzteres (oder runtime.Port-Äquivalente) kann auch zur gemeinsamen Nutzung von Optionen zwischen Ihrem Hintergrundskript(en) und Ihrem Inhaltsskript(en) verwendet werden.

Im Allgemeinen möchten Sie Optionen, die auf Optionsseiten geändert wurden, mithilfe der storage API entweder in storage.sync (wenn Sie möchten, dass die Einstellungen über alle Instanzen dieses Browsers, in dem der Benutzer angemeldet ist, synchronisiert werden) oder in storage.local (wenn die Einstellungen lokal für den aktuellen Rechner/das aktuelle Profil sind) speichern. Wenn Sie dies tun und Ihre Hintergrundskript(en) (oder Inhaltsskript(en)) über die Änderung informiert werden müssen, können Ihre Skripte einen Listener zu storage.onChanged hinzufügen.

Syntax

Der options_ui-Schlüssel ist ein Objekt mit folgendem Inhalt:

Name Typ Beschreibung
browser_style
Optional
Veraltet in Manifest V3.
Boolean

Optional, voreingestellt auf:

  • true in Manifest V2 und vor Firefox 115 in Manifest V3.
  • false in Manifest V3 ab Firefox 115.

Setzen Sie browser_style nicht auf true: Es wird in Manifest V3 ab Firefox 118 nicht unterstützt. Siehe Manifest V3-Migration für browser_style.

In Firefox kann das Stylesheet unter chrome://browser/content/extension.css oder chrome://browser/content/extension-mac.css auf macOS eingesehen werden. Bei der Dimensionierung sollte berücksichtigt werden, dass dieses Stylesheet box-sizing: border-box setzt (siehe box-sizing).

open_in_tab
Optional
Boolean
  • Wenn false, öffnet sich die Optionsseite im Add-on-Manager des Browsers.
  • Wenn true, öffnet sich die Optionsseite in einem normalen Browser-Tab.

Standardmäßig false.

page String

Obligatorisch.

Der Pfad zu einer HTML-Datei, die die Spezifikation Ihrer Optionsseite enthält.

Der Pfad ist relativ zum Speicherort von manifest.json selbst.

Beispiel

json
"options_ui": {
  "page": "options/options.html"
}

Browser-Kompatibilität

Siehe auch