bookmarks

WebExtensions bookmarks API 允許擴充套件與瀏覽器的書籤系統進行互動和操作。您可以使用它來新增書籤、檢索現有書籤,以及編輯、刪除和組織書籤。

要使用此 API,擴充套件必須在其 manifest.json 檔案中請求 "bookmarks" 許可權

擴充套件無法在書籤樹的根節點建立、修改或刪除書籤。這樣做會導致一個錯誤,訊息為:“無法修改書籤根節點

型別

bookmarks.BookmarkTreeNode

表示書籤樹中的一個書籤或資料夾。

bookmarks.BookmarkTreeNodeType

一個 String 列舉,描述樹中的節點是書籤、資料夾還是分隔符。

bookmarks.BookmarkTreeNodeUnmodifiable

一個 String 列舉,指定書籤或資料夾無法修改的原因。

bookmarks.CreateDetails

包含在建立新書籤時傳遞給 bookmarks.create() 函式的資訊。

函式

bookmarks.create()

建立書籤或資料夾。

bookmarks.get()

根據書籤 ID 或書籤 ID 陣列檢索一個或多個 BookmarkTreeNode

bookmarks.getChildren()

檢索指定 BookmarkTreeNode 的子節點。

bookmarks.getRecent()

檢索請求數量的最近新增的書籤。

bookmarks.getSubTree()

檢索書籤樹的一部分,從指定節點開始。

bookmarks.getTree()

將整個書籤樹檢索到一個 BookmarkTreeNode 物件陣列中。

bookmarks.move()

將指定的 BookmarkTreeNode 移動到書籤樹中的新位置。

bookmarks.remove()

根據節點 ID 刪除書籤或空書籤資料夾。

bookmarks.removeTree()

遞迴刪除書籤資料夾;也就是說,根據資料夾節點的 ID,刪除該節點及其所有子節點。

bookmarks.search()

搜尋符合指定條件的 BookmarkTreeNode

bookmarks.update()

根據書籤 ID 更新書籤的標題和/或 URL,或書籤資料夾的名稱。

事件

bookmarks.onCreated

當建立書籤或資料夾時觸發。

bookmarks.onRemoved

當刪除書籤或資料夾時觸發。當一個資料夾被遞迴刪除時,只會為該資料夾觸發一個通知,而不會為其內容觸發通知。

bookmarks.onChanged

當書籤或資料夾發生更改時觸發。目前,只有 titleurl 的更改會觸發此事件。

bookmarks.onMoved

當書籤或資料夾被移動到不同的父資料夾或在其資料夾內移動到新位置時觸發。

bookmarks.onChildrenReordered

當用戶在瀏覽器 UI 中對資料夾的子項進行了排序時觸發。這不會由 move() 呼叫引起。

bookmarks.onImportBegan

當書籤匯入會話開始時觸發。昂貴的觀察者應忽略 bookmarks.onCreated 更新,直到觸發 bookmarks.onImportEnded。觀察者仍應立即處理其他通知。

bookmarks.onImportEnded

當書籤匯入會話結束時觸發。

擴充套件程式示例

瀏覽器相容性

注意: 此 API 基於 Chromium 的 chrome.bookmarks API。本文件源自 Chromium 程式碼中的 bookmarks.json