userScripts.execute()
Injiziert ein Benutzerskript in einen Zielkontext (z. B. Tab oder Frame).
Hinweis:
Standardmäßig wird das injizierte Skript bei document_idle ausgeführt oder sofort, wenn die Seite geladen ist. Wenn die Eigenschaft injectImmediately auf true gesetzt ist, injiziert das Skript ohne zu warten, selbst wenn die Seite noch lädt.
Syntax
let executeUserScript = browser.userScripts.execute(
injection, // object
);
Parameter
injection-
Ein Objekt, das angibt, welche Benutzerskripte wohin und wie injiziert werden sollen.
injectImmediatelyOptional-
boolean. Wenn auftruegesetzt, wird die Injektion so schnell wie möglich im Zielkontext ausgelöst. Dies garantiert nicht, dass die Injektion vor dem Laden der Seite erfolgt, da die Seite möglicherweise vor dem Skript das Ziel erreicht. js-
arrayvonuserScripts.ScriptSource. Die Skripte, die in passende Seiten injiziert werden sollen. target-
Ein Objekt, das den Zielkontext definiert, in den Skripte injiziert werden.
allFramesOptional-
boolean. Wenn auftruegesetzt, wird das Skript in alle verfügbaren Frames injiziert. Standardmäßig wird es nur in den obersten Frame injiziert. documentIdsOptional-
arrayvonstring. Die IDs der Dokumente, in die injiziert werden soll. Darf nicht angegeben werden, wennframeIdsgesetzt ist. frameIdsOptional-
arrayvoninteger. Die IDs der Frames, in die injiziert werden soll. Darf nicht angegeben werden, wenndocumentIdsgesetzt ist. tabId-
integer. Die ID eines Tabs, in den injiziert werden soll.
worldOptional-
userScripts.ExecutionWorld. Die Ausführungsumgebung, die verwendet wird, um die Skripte auszuführen. Standardmäßig"USER_SCRIPT". worldIdOptional-
string. ID einer Benutzerskript-Welt, in der das Skript ausgeführt wird. Nur gültig, wennworldUSER_SCRIPTist oder weggelassen wird. WennworldIdweggelassen wird, wird das Skript in der Standard-USER_SCRIPT-Welt ("") ausgeführt. Werte mit führenden Unterstrichen (_) sind reserviert. Die maximale Länge beträgt 256 Zeichen. Eine Welt kann von mehreren Skripten als ihre Ausführungsumgebung verwendet werden. Um das Verhalten einer Welt zu konfigurieren, übergeben Sie ihreworldIdanuserScripts.configureWorldbevor das erste Skript in dieser Welt ausgeführt wird.
Rückgabewert
Ein Promise, das mit einem Array von Objekten erfüllt wird, die das Ergebnis der Injektion mit folgenden Eigenschaften beschreiben:
documentId-
string. Dokument-ID, die mit der Injektion verbunden ist. errorOptional-
string. Fehlermeldung, falls vorhanden. Dies schließt sich gegenseitig mitresultaus. frameId-
integer. Frame-ID, die mit der Injektion verbunden ist. resultOptional-
string. Ergebnis der Skriptinjektion, falls vorhanden. Dies schließt sich gegenseitig miterroraus.
Beispiele
await browser.userScripts.execute({
js: [{ code: "console.log('Hello world!');" }],
target: { tabId: 1 },
});