options_ui

Type Objet
Obligatoire Non
Exemple
json
"options_ui": {
  "page": "options/options.html"
}

Utilisez la clé options_ui pour définir une page d'options pour votre extension.

La page d'options contient des paramètres pour l'extension. L'utilisateur peut y accéder à partir du gestionnaire des extensions du navigateur, et vous pouvez l'ouvrir à partir de votre extension à l'aide de runtime.openOptionsPage().

Vous spécifiez options_ui comme un chemin vers un fichier HTML intégré à votre extension. Le fichier HTML peut inclure des fichiers CSS et JavaScript, tout comme une page Web normale. Contrairement à une page normale, le JavaScript peut utiliser toutes les APIs WebExtension pour lesquelles l'extension possède des permissions. Cependant, il fonctionne dans un "scope" différent de celui de vos scripts d'arrière plan.

Si vous souhaitez partager des données ou des fonctions, entre JavaScript sur votre page d'options et vos scripts d'arrière-plan, vous pouvez le faire directement en obtenant une référence à la fenêtre de vos scripts d'arrière-plan avec extension.getBackgroundPage(), ou une référence à Window de l'une des pages s'exécutant dans votre extension avec extension.getViews(). Ou, vous pouvez faire communiquer le JavaScript de votre page d'options et vos scripts en arrière-plan à l'aide de runtime.sendMessage(), runtime.onMessage, ou runtime.connect().

Ces derniers (ou les équivalents runtime.Port peuvent également être utilisés pour partager des options entre vos scripts d'arrière-plan et vos scripts de contenu.

En général, vous souhaiterez stocker les options modifiées sur les pages d'options à l'aide de storage API soit dans storage.sync() (si vous souhaitez que les paramètres soient synchronisés sur toutes les instances du navigateur auxquelles l'utilisateur est connecté), ou storage.local() (si les paramètres sont locaux, dans la machine/le profil actuel). Si vous le faites et que votre (vos) scripts d'arrière plan (ou script(s) de contenus) doit connaître le changement, votre (vos) script(s) d'arrière plan pourra choisir d'ajouter un auditeur à storage.onChanged.

Syntaxe

La clé options_ui est un objet avec le contenu suivant :

Name Type Description
browser_style
Facultatif
Booléen

Facultatif, par défaut : true .

Utilisez cette option pour inclure une feuille de style dans votre page qui la rendra compatible avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style . Bien qu'il contienne par défaut true , il est recommandé d'inclure cette propriété.

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur macOS. Lorsque vous fixez les dimensions, sachez que cette feuille de style fixe actuellement box-sizing: border-box (voir box-sizing).

Le guide de style Firefox décrit les classes que vous pouvez appliquer aux éléments de la fenêtre contextuelle afin d'obtenir des styles particuliers.

open_in_tab
Facultatif
Booléen

par défaut : false.

Si c'est true , la page options s'ouvrira dans un onglet normal du navigateur, plutôt que d'être intégrée au gestionnaire des extensions du navigateur.

page Chaîne de caractères

Obligatoire

Le chemin d'accès au fichier HTML contenant la spécification de votre page d'options.

Le chemin est relatif à l'emplacement du manifest.json lui-même.

Exemple

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

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi