Spec-Zone.ru › Web Extensions

scripting.removeCSS()

Удаляет стиловый лист CSS, вставленный с помощью вызова scripting.insertCSS().

Примечание: Этот метод доступен в Manifest V3 или выше в Chrome и Firefox 101. В Safari и Firefox 102+ этот метод также доступен в Manifest V2.

Для использования этого API у вас должен быть "scripting" разрешение и разрешение для URL страницы, либо явно как разрешение на хост, либо с использованием разрешения activeTab.

Это асинхронная функция, которая возвращает Promise.

Синтаксис

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

Параметры

details

Объект, описывающий CSS для удаления и место, откуда его удалить. Он содержит следующие свойства:

css Необязательно

string. Строка, содержащая CSS для вставки. Должен быть указан либо css либо files, и должен соответствовать стиловом листу, вставленному с помощью scripting.insertCSS().

files Необязательно

array string. Путь к файлу CSS для вставки, относительно корневой директории расширения. Должен быть указан либо files либо css, и должен соответствовать стиловом листу, вставленному с помощью scripting.insertCSS().

origin Необязательно

string. Происхождение стилей для вставки, либо USER или AUTHOR. По умолчанию AUTHOR. Должно совпадать с происхождением стилового листа, вставленного с помощью scripting.insertCSS().

target

scripting.InjectionTarget. Подробная информация, определяющая цель удаления CSS.

Возвращаемое значение

A Promise, который выполняется без аргументов, когда весь CSS удален. Если произошла какая-либо ошибка, обещание отклоняется. Попытки удалить несуществующие стиловые листы игнорируются.

Примеры

В этом примере добавляется CSS с помощью scripting.insertCSS, а затем удаляется при нажатии на действие браузера:

// 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}`);
  }
});

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
removeCSS 88 88 102 ? 74 15.4 ? ? 102 ? 15.4 ?
origin 88 88 102 ? 74 Нет ? ? 102 ? Нет ?

Примечание: Этот API основан на API chrome.scripting Chromium.

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/scripting/removeCSS

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API