userScripts
Verwenden Sie diese API, um Benutzer-Skripte zu registrieren, also Drittanbieter-Skripte, die Webseiten manipulieren oder neue Funktionen bereitstellen. Das Registrieren eines Benutzer-Skripts weist den Browser an, das Skript zu Seiten hinzuzufügen, die den während der Registrierung angegebenen URL-Mustern entsprechen.
Hinweis:
Dies ist die Dokumentation für die Legacy-API-Version, die in Firefox für Manifest V2 verfügbar ist. Eine neue API wurde entworfen, siehe WECG issue 279. Diese neue Version der API wird in Firefox für die Verwendung in Manifest V3 verfügbar sein. Die Entwicklung wird in Firefox bug 1875475 verfolgt. Chrome beinhaltet eine Implementierung der neuen API. In der Zwischenzeit sollten Sie bei der Verwendung von Manifest V3 oder höher scripting.registerContentScripts()
verwenden, um Skripte zu registrieren.
Diese API bietet ähnliche Funktionen wie contentScripts
, aber mit Merkmalen, die auf den Umgang mit Drittanbieter-Skripten zugeschnitten sind:
- Ausführung in einer isolierten Sandbox: Jedes Benutzer-Skript wird in einer isolierten Sandbox innerhalb des Webinhaltsprozesses ausgeführt, um unbeabsichtigte oder absichtliche Interferenzen zwischen Skripten zu verhindern.
- Zugriff auf die globalen Werte
window
unddocument
, die mit der Webseite verbunden sind, an die das Benutzer-Skript angehängt ist. - Kein Zugriff auf WebExtension-APIs oder zugehörige Berechtigungen, die der Erweiterung gewährt wurden: Das API-Skript, welches die Berechtigungen der Erweiterung erbt, kann gepackte WebExtension-APIs für registrierte Benutzer-Skripte bereitstellen. Ein API-Skript wird in der Manifestdatei der Erweiterung mit dem Schlüssel "user_scripts" deklariert.
Warnung:
Diese API erfordert das Vorhandensein des Schlüssels user_scripts
in der manifest.json, auch wenn kein API-Skript angegeben ist. Zum Beispiel: user_scripts: {}
.
Um die API zu verwenden, rufen Sie
auf und übergeben ein Objekt, das die zu registrierenden Skripte definiert. Die Methode gibt ein Promise zurück, das mit einem register()
-Objekt aufgelöst wird.RegisteredUserScript
Hinweis: Benutzer-Skripte werden abgemeldet, wenn die zugehörige Erweiterungsseite (von der aus die Benutzer-Skripte registriert wurden) entladen wird. Sie sollten deshalb ein Benutzer-Skript von einer Erweiterungsseite registrieren, die mindestens so lange bestehen bleibt, wie Sie möchten, dass die Benutzer-Skripte registriert bleiben.
Typen
userScripts.RegisteredUserScript
-
Das
object
, das von der Methoderegister()
zurückgegeben wird. Es repräsentiert die registrierten Benutzer-Skripte und wird verwendet, um die Benutzer-Skripte abzumelden.
Methoden
userScripts.register()
-
Registriert Benutzer-Skripte.
Ereignisse
userScripts.onBeforeScript
-
Ein Ereignis, das dem API-Skript zur Verfügung steht, das in
"user_scripts"
registriert ist. Es wird vor der Ausführung eines Benutzer-Skripts ausgelöst. Verwenden Sie es, um den Export zusätzlicher von dem API-Skript bereitgestellter APIs auszulösen, sodass diese im Benutzer-Skript verfügbar sind.
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | ||||||
---|---|---|---|---|---|---|---|
RegisteredUserScript | |||||||
RegisteredUserScript.unregister | |||||||
onBeforeScript | |||||||
register | |||||||
register.cookieStoreId |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
- No support
- No support