Spec-Zone.ru › Web Extensions

action.setBadgeBackgroundColor()

Устанавливает цвет фона для значка. Вкладки без заданного цвета фона значка унаследуют глобальный цвет фона значка, который по умолчанию равен [217, 0, 0, 255] в Firefox.

Примечание: Этот API доступен в Manifest V3 или выше.

В Firefox, если цвет текста значка не задан явно с помощью action.setBadgeTextColor(), тогда цвет текста значка автоматически устанавливается в черный или белый для максимального контраста с заданным цветом фона значка. Например, если вы установите цвет фона значка в белый, то цвет текста значка по умолчанию будет черным, и наоборот.

В других браузерах всегда используется белый цвет текста, поэтому для обеспечения читаемости текста предпочтительно устанавливать тёмный фон.

Синтаксис

browser.action.setBadgeBackgroundColor(
  details // object
)

Параметры

details

Объект со следующими свойствами:

color

Цвет, заданный как один из:

  • строка: любое значение CSS <цвет>, например "red", "#FF0000", или "rgb(255,0,0)". Если строка не является допустимым цветом, возвращённое обещание будет отклонено, и цвет фона не будет изменён.
  • объект action.ColorArray.
  • null. Если задан tabId, это удаляет специфичный для вкладки цвет фона значка, так что вкладка наследует глобальный цвет фона значка. В противном случае это восстановит глобальный цвет фона значка до значения по умолчанию.
tabId Необязательно

integer. Устанавливает цвет фона значка только для данной вкладки. Цвет сбрасывается, когда пользователь переходит по этой вкладке на новую страницу.

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

integer. Устанавливает цвет фона значка только для данной вкладки.

  • Если windowId и tabId заданы оба, функция завершается ошибкой, и цвет не устанавливается.
  • Если windowId и tabId оба пропущены, устанавливается глобальный цвет фона значка.

Примеры

Цвет фона, который изначально красный, и становится зелёным при нажатии на действие расширения:

browser.action.setBadgeText({ text: "1234" });
browser.action.setBadgeBackgroundColor({ color: "red" });

browser.action.onClicked.addListener(() => {
  browser.action.setBadgeBackgroundColor({ color: "green" });
});

Установить цвет фона значка только для активной вкладки:

browser.action.setBadgeText({ text: "1234" });
browser.action.setBadgeBackgroundColor({ color: "red" });

browser.action.onClicked.addListener((tab) => {
  browser.action.setBadgeBackgroundColor({
    color: "green",
    tabId: tab.id,
  });
});

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

Рабочий стол Мобильные
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
setBadgeBackgroundColor 88 88 109 ? 74 Нет ? ? 109 ? Нет ?

Цвет по умолчанию в Firefox: [217, 0, 0, 255].

Примечание: Этот API основан на API chrome.action Chromium. Данная документация получена из browser_action.json кода 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/action/setBadgeBackgroundColor

Spec-Zone.ru

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