userScripts.register()
Dans les pages d'une extension (comme la page d'arrière plan), l'API userScripts fournit une méthode API register()
. Cette méthode est très similaire à la méthode API contentScripts.register()
(par exemple, ils retournent tous les deux une promise qui est résolue à un objet API qui fournit un unregister()
pour la désinscription du script enregistré de tous les processus enfants), avec quelques différences dans les options prises en charge.
C'est une méthode asynchrone qui retourne un Promise
.
Syntaxe
const registeredUserScript = await browser.userScripts.register(
userScriptOptions // object
);
….
await registeredUserScript.unregister();
Paramètres
userScriptOptions
-
object
. Un objetUserScriptOptions
représentant les scripts de contenu à enregistrer. Il a une syntaxe similaire aux options supportées parcontentScripts.register()
.L'objet
UserScriptOptions
possède les propriétés suivantes :- scriptMetadata
Facultatif
-
Un objet
JSON
qui contient certaines propriétés de métadonnées associées auxuserScripts
enregistrés allFrames Facultatif
-
Identiques à
all_frames
dans la cléuser_scripts
. excludeGlobs
Facultatif-
Identique à
exclude_globs
dans la cléuser_scripts
. excludeMatches
Facultatif-
Identique à
exclude_matches
dans la cléuser_scripts
. includeGlobs
Facultatif-
Identique à
include_globs
dans la cléuser_scripts
. js
Facultatif-
Un tableau d'objets. Chaque objet a soit une propriété nommée
file
, qui est une URL commençant par le fichier manifest.json de l'extension et pointant vers un fichier JavaScript à enregistrer, soit une propriété nomméecode
, qui est un code JavaScript à enregistrer. matchAboutBlank
Facultatif-
Identique à
match_about_blank
dans la cléuser_scripts
. matches
-
Identique à
matches
dans la cléuser_scripts
. runAt
Facultatif-
Identique à
run_at
dans la cléuser_scripts
.
- scriptMetadata
Contrairement aux options de script de contenu, l'objet userScriptOptions n'a pas de propriété css. Utilisez contentScripts.register()
pour enregistrer/désenregistrer dynamiquement les feuilles de style).
Valeur retournée
Une Promise
qui sera rempli avec un objet RegisteredUserScript
que vous pouvez utiliser pour désinscrire ce script utilisateur particulier.
Note : Actuellement, les scripts utilisateur sont désenregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts utilisateur ont été enregistrés) est déchargée, vous devez donc enregistrer un script utilisateur depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts utilisateur restent enregistrés.
Compatibilité des navigateurs
BCD tables only load in the browser