theme.onUpdated

當以瀏覽器擴充套件形式提供的外觀被應用或移除時觸發。具體來說:

此事件不會因內建外觀的更改而觸發。

語法

js
browser.theme.onUpdated.addListener(listener)
browser.theme.onUpdated.removeListener(listener)
browser.theme.onUpdated.hasListener(listener)

事件有三個函式

addListener(listener)

向此事件新增監聽器。

removeListener(listener)

停止監聽此事件。listener 引數是要移除的監聽器。

hasListener(listener)

檢查 listener 是否已為此事件註冊。如果正在監聽,則返回 true,否則返回 false

addListener 語法

引數

監聽器

此事件發生時呼叫的函式。該函式會傳遞以下引數:

updateInfo

object。一個包含兩個屬性的物件。

theme

object。如果事件因擴充套件提供的外觀被移除而觸發,則為空物件。如果事件因擴充套件提供的外觀被應用而觸發,則為一個表示已應用外觀的 theme.Theme 物件。

windowId 可選

integer。外觀更新所在的視窗 ID。如果此屬性不存在,則表示外觀在所有視窗中都已更新。

示例

js
function handleUpdated(updateInfo) {
  if (updateInfo.theme.colors) {
    console.log(`Theme was applied: ${updateInfo.theme}`);
  } else {
    console.log(`Theme was removed`);
  }
}

browser.theme.onUpdated.addListener(handleUpdated);

擴充套件程式示例

瀏覽器相容性