我有一个 Firefox 扩展,它使用推荐的技术向“导航栏”工具栏添加了几个按钮(请参阅https://developer.mozilla.org/en/Code_snippets/Toolbar#Adding_button_by_default)。一切正常,首次启动时添加按钮,用户可以添加、删除或重新组织按钮。
我需要能够通过自定义对话框添加和删除这些按钮。这就是问题所在:我可以通过insertItem
方法添加按钮,但是没有removeItem
方法。
我可以通过调用removeChild
DOM 方法删除项目,然后从工具栏的currentset
属性中删除项目 ID。但是在重新启动浏览器之前我无法重新启用该项目,因为它不会返回到调色板。
// remove item's ID from toolbar's current set of items
// this does not remove the item
toolbar.setAttribute('currentset', newSet);
document.persist(toolbar.id, 'currentset');
// item is removed, but it doesn't return to palette
// so it can't be added againg before restart
toolbar.removeChild(button);
有什么方法我不仅可以通过编程方式添加,还可以从 Firefox 工具栏中删除项目?谢谢。