推奨される手法を使用して「ナビゲーション バー」ツールバーにいくつかのボタンを追加する Firefox 拡張機能があります ( https://developer.mozilla.org/en/Code_snippets/Toolbar#Adding_button_by_defaultを参照)。すべてが正常に機能し、最初の起動時にボタンが追加され、ユーザーはボタンを追加、削除、または再編成できます。
カスタム ダイアログを介してこれらのボタンを追加および削除できるようにする必要があります。ここに問題があります。メソッドを介してボタンを追加できますinsertItem
が、メソッドがありませんremoveItem
。
DOM メソッドを呼び出しremoveChild
てアイテム ID をツールバーのcurrentset
属性から削除することで、アイテムを削除できます。しかし、パレットに戻らないため、ブラウザーを再起動する前にアイテムを再度有効にすることはできません。
// 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 ツールバーからアイテムを追加するだけでなく削除する方法はありますか? ありがとう。