options_ui

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

Verwenden Sie den Schlüssel options_ui, um eine Optionsseite für Ihre Erweiterung zu definieren. Auf dieser Seite können Sie den Benutzern ermöglichen, die Einstellungen Ihrer Erweiterung zu ändern.

Die Art und Weise, wie der Benutzer die Seite öffnet, hängt vom Browser und 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 verpackt ist. Die HTML-Datei kann CSS- und JavaScript-Dateien enthalten, genau wie eine normale Webseite. Anders als bei einer normalen Seite kann das JavaScript jedoch alle WebExtension-APIs verwenden, für die die Erweiterung Berechtigungen hat. Es wird jedoch in einem anderen Kontext als Ihre Hintergrundskripte ausgeführt.

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 zum Window Ihrer Hintergrundskripte über extension.getBackgroundPage() oder eine Referenz zum Window einer beliebigen Seite, die innerhalb Ihrer Erweiterung ausgeführt wird, mit extension.getViews() erhalten. Alternativ können Sie zwischen dem JavaScript für Ihre Optionsseite und Ihrem Hintergrundskript(en) über runtime.sendMessage(), runtime.onMessage oder runtime.connect() kommunizieren. Die letztgenannten (oder Äquivalente von runtime.Port) können auch verwendet werden, um Optionen zwischen Ihrem Hintergrundskript(en) und Ihrem Inhaltsskript(en). zu teilen.

Im Allgemeinen sollten Sie die auf Optionsseiten geänderten Einstellungen mit der storage API speichern, entweder in storage.sync (wenn Sie möchten, dass die Einstellungen über alle Instanzen dieses Browsers, bei denen der Benutzer angemeldet ist, synchronisiert werden) oder in storage.local (wenn die Einstellungen lokal auf dem aktuellen Rechner/Profil gespeichert werden). Wenn Sie dies tun und Ihr Hintergrundskript(e) (oder Inhaltsskript(e)) über die Änderung informiert werden müssen, könnten Ihre Skripte entscheiden, einen Listener zu storage.onChanged hinzuzufügen.

Syntax

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

Name Typ Beschreibung
browser_style
Optional
Veraltet in Manifest V3.
Boolean

Optional, standardmäßig:

  • 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, wird die Optionsseite im Add-on-Manager des Browsers geöffnet.
  • Wenn true, wird die Optionsseite in einem normalen Browser- Tab geöffnet.

Standardmäßig false.

page String

Verpflichtend.

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

Der Pfad ist relativ zur Position der manifest.json selbst.

Beispiel

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

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch