scripting.removeCSS()
Entfernt ein CSS-Stylesheet, das durch einen Aufruf von scripting.insertCSS()
eingefügt wurde.
Hinweis: Diese Methode ist ab 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 verwenden, benötigen Sie die "scripting"
-Berechtigung und die Berechtigung für die URL der Seite, entweder explizit als Host-Berechtigung oder durch die 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 das zu entfernende CSS und den Ort beschreibt, an dem es entfernt werden soll. Es enthält die folgenden Eigenschaften:
css
Optional-
string
. Ein String, der das einzufügende CSS enthält. Entwedercss
oderfiles
muss angegeben werden und muss mit dem durchscripting.insertCSS()
eingefügten Stylesheet übereinstimmen. files
Optional-
array
vonstring
. Der Pfad einer CSS-Datei, die eingefügt werden soll, relativ zum Root-Verzeichnis der Erweiterung. Entwederfiles
odercss
muss angegeben werden und muss mit dem durchscripting.insertCSS()
eingefügten Stylesheet übereinstimmen. origin
Optional-
string
. Der Stilursprung für die Einfügung, entwederUSER
oderAUTHOR
. Standard istAUTHOR
. Muss mit dem Ursprung des durchscripting.insertCSS()
eingefügten Stylesheet übereinstimmen. 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 ist. Falls ein Fehler auftritt, wird das Promise abgelehnt. Versuche, nicht existierende Stylesheets zu entfernen, werden ignoriert.
Beispiele
Dieses Beispiel fügt einige CSS mit scripting.insertCSS
hinzu und entfernt es dann wieder, wenn der Benutzer 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
Hinweis:
Diese API basiert auf Chromiums chrome.scripting
API.