bookmarks.onChanged

当书签的

  • 标题或 URL 发生变化时触发
  • 文件夹名称发生变化时触发。

语法

js
browser.bookmarks.onChanged.addListener(listener)
browser.bookmarks.onChanged.removeListener(listener)
browser.bookmarks.onChanged.hasListener(listener)

事件有三个函数

addListener(listener)

为该事件添加监听器。

removeListener(listener)

停止监听该事件。listener 参数是要移除的监听器。

hasListener(listener)

检查 listener 是否已注册为该事件的监听器。如果正在监听,则返回 true,否则返回 false

addListener 语法

参数

listener

当该事件发生时调用的函数。该函数会传入以下参数

id

string. 发生变化的项目的 ID。

changeInfo

object. 包含两个属性的对象:title,包含项目标题的字符串,以及 url,包含项目 URL 的字符串。如果项目是文件夹,则会省略 url

注意:书签更改时可能会发生多个事件,并且 changeInfo 对象可能只包含已更改的数据,而不是书签的所有数据。换句话说,如果书签的 url 发生更改,changeInfo 可能只包含新的 url 信息。

示例

js
function handleChanged(id, changeInfo) {
  console.log(`Item: ${id} changed`);
  console.log(`Title: ${changeInfo.title}`);
  console.log(`Url: ${changeInfo.url}`);
}

function handleClick() {
  browser.bookmarks.onChanged.addListener(handleChanged);
}

browser.browserAction.onClicked.addListener(handleClick);

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

注意:此 API 基于 Chromium 的 chrome.bookmarks API。此文档源自 Chromium 代码中的 bookmarks.json