scripting.removeCSS()
Entfernt ein CSS-Stylesheet, das durch einen Aufruf von scripting.insertCSS()
eingefügt wurde.
Hinweis: Diese Methode ist in Manifest V3 oder höher in Chrome und Firefox 101 verfügbar. In Safari und Firefox 102+ ist diese Methode auch in Manifest V2 verfügbar.
Um diese API zu nutzen, müssen Sie die "scripting"
Berechtigung und die Berechtigung für die URL der Seite haben, entweder explizit als Host-Berechtigung oder unter Verwendung der activeTab Berechtigung.
Dies ist eine asynchrone Funktion, die ein Promise
zurückgibt.
Syntax
await browser.scripting.removeCSS(
details // object
)
Parameter
details
-
Ein Objekt, das beschreibt, welches CSS entfernt werden soll und wo es entfernt werden soll. Es enthält die folgenden Eigenschaften:
css
Optional-
string
. Ein String, der das zu injizierende CSS enthält. Entwedercss
oderfiles
muss angegeben werden und muss dem Stylesheet entsprechen, das durchscripting.insertCSS()
eingefügt wurde. files
Optional-
array
vonstring
. Der Pfad von CSS-Dateien, die injiziert werden sollen, relativ zum Stammverzeichnis des Add-ons. Entwederfiles
odercss
muss angegeben werden und muss dem Stylesheet entsprechen, das durchscripting.insertCSS()
eingefügt wurde. origin
Optional-
string
. Der Stil-Ursprung für die Injektion, entwederUSER
oderAUTHOR
. StandardmäßigAUTHOR
. Muss dem Ursprungsstil des Stylesheets entsprechen, das durchscripting.insertCSS()
eingefügt wurde. target
-
scripting.InjectionTarget
. Details, die das Ziel angeben, von dem das CSS entfernt werden soll.
Rückgabewert
Ein Promise
, das ohne Argumente erfüllt wird, wenn das gesamte CSS entfernt wurde. Tritt ein Fehler auf, wird das Promise abgelehnt. Versuche, nicht vorhandene Stylesheets zu entfernen, werden ignoriert.
Beispiele
Dieses Beispiel fügt einige CSS mit scripting.insertCSS
hinzu, das dann wieder entfernt wird, wenn der Nutzer auf eine Browser-Aktion klickt:
// Assuming some style has been injected previously with the following code:
//
// await browser.scripting.insertCSS({
// target: {
// tabId: tab.id,
// },
// css: "* { background: #c0ffee }",
// });
//
// We can remove it when a user clicked an extension button like this:
browser.action.onClicked.addListener(async (tab) => {
try {
await browser.scripting.removeCSS({
target: {
tabId: tab.id,
},
css: "* { background: #c0ffee }",
});
} catch (err) {
console.error(`failed to remove CSS: ${err}`);
}
});
Browser-Kompatibilität
BCD tables only load in the browser
Hinweis:
Diese API basiert auf der chrome.scripting
API von Chromium.