options_ui

Typ Object
Verpflichtend 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 verwenden Sie, um es Nutzern zu ermöglichen, die Einstellungen Ihrer Erweiterung zu ändern.

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

Sie geben options_ui als Pfad zu einer mit Ihrer Erweiterung gepackten HTML-Datei an. Die HTML-Datei kann CSS- und JavaScript-Dateien enthalten, genau 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 Kontext als Ihre Hintergrundskripte.

Wenn Sie Daten oder Funktionen direkt zwischen dem JavaScript auf Ihrer Optionsseite und Ihrem Hintergrundskript(en) teilen möchten, können Sie dies tun, indem Sie eine Referenz auf das Window Ihrer Hintergrundskripte mit extension.getBackgroundPage() erhalten, oder eine Referenz auf das Window einer der innerhalb Ihrer Erweiterung laufenden Seiten mit extension.getViews(). Alternativ können Sie zwischen dem JavaScript Ihrer Optionsseite und Ihrem Hintergrundskript(en) mit runtime.sendMessage(), runtime.onMessage oder runtime.connect() kommunizieren. Letztere (oder deren runtime.Port Äquivalente) können auch verwendet werden, um Optionen zwischen Ihren Hintergrundskript(en) und Ihren Inhaltskript(en) zu teilen.

Im Allgemeinen möchten Sie Optionen, die auf Optionsseiten geändert werden, mit der storage API entweder in storage.sync speichern (wenn die Einstellungen über alle Instanzen dieses Browsers, in die der Nutzer eingeloggt ist, synchronisiert werden sollen) oder in storage.local (wenn die Einstellungen lokal auf dem aktuellen Rechner/Profil gespeichert werden). Falls Sie dies tun und Ihre Hintergrundskript(e) (oder Inhaltskript(e)) über die Änderung informiert werden müssen, könnten 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, Standardwert:

  • 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. Beim Festlegen von Dimensionen beachten Sie, 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.

Standardwert ist false.

page String

Verpflichtend.

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