识别书签工具栏文件夹(Firefox Webextension)

3

我阅读了MDN关于如何获取书签树引用和导航的文档。但是,我怎么知道哪个文件夹代表书签工具栏?这个工具栏的名称因语言环境而异。我不确定用户是否仍然可以选择任意文件夹进行此操作,但几年前是可以的。

我找到了这篇文章:Programmatically bookmark pages in bookmark toolbar using firefox extension

但这不涉及现在每个人都必须使用的新WebExtension API。


1
你可以使用以下代码:browser.bookmarks.get("toolbar_____").then((value) => { console.log(JSON.stringify(value)); }, null); - Smile4ever
1
请注意,书签ID“toolbar_____”不能保证稳定性,但目前您可能仍然可以继续使用它。 - evilpie
1个回答

1
根据评论,您可以搜索特定的ID。
// If you just need the node or its contents
let toolbar_node = await browser.bookmarks.get("toolbar_____");
let toolbar_subtree = await browser.bookmarks.getSubTree("toolbar_____");

// If you're walking the tree on your own
if (node.id == "toolbar_____") { /* it's the toolbar */ }

他们显然是在4年前https://bugzilla.mozilla.org/show_bug.cgi?id=1071505引入的,旨在作为硬编码值由其他Firefox子系统普遍使用。虽然这可能会改变,但这不太可能,并且必须有一个很好的理由,因为其他地方存在所有预先存在的依赖关系。
话虽如此,在WebExtensions中使用它们并没有记录。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接