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 语法

参数

监听器

此事件发生时调用的函数。该函数会传递以下参数:

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);

浏览器兼容性

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