Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

bookmarks.getSubTree()

bookmarks.getSubTree() は、ID を指定して bookmarks.BookmarkTreeNode を非同期に取得するメソッドです。

対象がフォルダの場合、children プロパティを再帰的にたどることで、すべての子要素にアクセスすることができます。

構文

browser.bookmarks.getSubTree(
  id,      // 文字列
  callback // 関数
)

引数

id
取得したい部分木のルートノードに対応する ID を表す string です。
callback
リクエストしたノードが取得された際に呼び出される関数です。この関数には以下の引数が渡ります。
results
指定した ID に対応する bookmarks.BookmarkTreeNode オブジェクトが 1 つ含まれた配列

ブラウザ実装状況

Chrome Edge Firefox Firefox for Android Opera
Basic Support Yes No 45.0 No 33

以下の例は、指定したノードの配下にある部分木を再帰的に出力するものです。

function makeIndent(indentLength) {
  return ".".repeat(indentLength);
}

function logItems(bookmarkItem, indent) {
  if (bookmarkItem.url) {
    console.log(makeIndent(indent) + bookmarkItem.url);
  } else {
    console.log(makeIndent(indent) + "Folder");
    indent++;
  }
  if (bookmarkItem.children) {
    for (child of bookmarkItem.children) {
      logItems(child, indent);
    }
  }
  indent--;
}

function logSubTree(bookmarkItems) {
  logItems(bookmarkItems[0], 0);
}

function handleClick() {
  var subTreeID = "unfiled_____";
  chrome.bookmarks.getSubTree(subTreeID, logSubTree);
}

chrome.browserAction.onClicked.addListener(handleClick);

謝辞

この API は Chromium の chrome.bookmarks API に基づいています。また、このドキュメントは bookmarks.json における Chromium のコードから作成されています。

Microsoft Edge の実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従います。

 

ドキュメントのタグと貢献者

 このページの貢献者: hashedhyphen
 最終更新者: hashedhyphen,