scripting.removeCSS()

Entfernt ein durch einen Aufruf von scripting.insertCSS() eingefügtes CSS-Stylesheet.

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 verwenden, müssen Sie die "scripting" Berechtigung sowie die Berechtigung für die URL der Seite besitzen, entweder explizit als Host-Berechtigung oder unter Verwendung der activeTab-Berechtigung.

Dies ist eine asynchrone Funktion, die ein Promise zurückgibt.

Syntax

js
await browser.scripting.removeCSS(
  details       // object
)

Parameter

details

Ein Objekt, das das zu entfernende CSS beschreibt und wo es entfernt werden soll. Es enthält die folgenden Eigenschaften:

css Optional

string. Ein String, der das einzufügende CSS enthält. Entweder css oder files muss angegeben werden und muss mit dem Stylesheet übereinstimmen, das durch scripting.insertCSS() eingefügt wurde.

files Optional

array von string. Der Pfad der einzufügenden CSS-Dateien, relativ zum Hauptverzeichnis der Erweiterung. Entweder files oder css muss angegeben werden und muss mit dem Stylesheet übereinstimmen, das durch scripting.insertCSS() eingefügt wurde.

origin Optional

string. Der Stilursprung für die Einfügung, entweder USER oder AUTHOR. Standardmäßig AUTHOR. Muss mit dem Ursprung des Stylesheets übereinstimmen, das durch scripting.insertCSS() eingefügt wurde.

target

scripting.InjectionTarget. Details, die das Ziel spezifizieren, von dem das CSS entfernt werden soll.

Rückgabewert

Ein Promise, das ohne Argumente erfüllt wird, wenn das gesamte CSS entfernt ist. Tritt ein Fehler auf, wird das Promise abgelehnt. Versuche, nicht vorhandene Stylesheets zu entfernen, werden ignoriert.

Beispiele

Dieses Beispiel fügt etwas CSS mit scripting.insertCSS hinzu und entfernt es wieder, wenn der Benutzer auf eine Browseraktion klickt:

js
// 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 der chrome.scripting API von Chromium.