theme.onUpdated
当作为浏览器扩展提供的主题被应用或移除时触发。具体情况包括:
- 安装静态主题时
- 动态主题调用
theme.update()
或theme.reset()
时 - 主题被卸载时
此事件不会因内置主题的更改而触发。
语法
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 语法
参数
listener
-
当此事件发生时调用的函数。该函数传递以下参数:
updateInfo
-
object
。包含两个属性的对象:theme
-
object
。如果事件因为移除了扩展提供的主题而触发,则这是一个空对象。如果事件因为应用了扩展提供的主题而触发,则这是一个表示已应用主题的theme.Theme
对象。 windowId
可选-
integer
。更新主题的窗口的 ID。如果此属性不存在,则主题在所有窗口中更新。
示例
js
function handleUpdated(updateInfo) {
if (updateInfo.theme.colors) {
console.log(`主题被应用:${updateInfo.theme}`);
} else {
console.log(`主题被移除`);
}
}
browser.theme.onUpdated.addListener(handleUpdated);
示例扩展
浏览器兼容性
BCD tables only load in the browser