1

更新したい古い FF 拡張機能があります。問題は、拡張ツールバーがアドレス バーの横に配置されなくなったことです。私はたくさん検索しましたが、スクリプトを作成することが唯一の方法のようですが、それを機能させる方法は見つかりませんでした.

たとえば、ナビゲーション バーへの参照を取得する方法がわかりません。

私はこれを試しましたが、運がありません:

    var navBar = document.getElementById('nav-bar');
    if (!navBar) {
        return;
    }
    var btn = document.createElement('toolbarbutton');  
    btn.setAttribute('id', 'mybutton-id');
    btn.setAttribute('type', 'button');
    btn.setAttribute('class', 'toolbarbutton-1');
    btn.setAttribute('image', data.url('bulb.png'));
    btn.setAttribute('orient', 'horizontal');
    btn.setAttribute('label', 'My Button');
    navBar.appendChild(btn);
4

1 に答える 1

2

ほとんどの場合、アイコンをナビゲーションバーに追加できます。私が使用するコードは次のとおりです。

function installButton(toolbarId, id, afterId) {
    if (!document.getElementById(id)) {
        var toolbar = document.getElementById(toolbarId);

        if (toolbar) {
            // If no afterId is given, then append the item to the toolbar
            var before = null;
            if (afterId) {
                var elem = document.getElementById(afterId);
                if (elem && elem.parentNode == toolbar)
                    before = elem.nextElementSibling;
            }


            toolbar.insertItem(id, before);
            toolbar.setAttribute("currentset", toolbar.currentSet);
            document.persist(toolbar.id, "currentset");

            if (toolbarId == "addon-bar")
                toolbar.collapsed = false;
        }

    }
}

これは次のように呼び出すことができます:

installButton("nav-bar","YOURBUTTONID");

あなたの中に「YOURBUTTONID」がなければならないことを忘れないでくださいBrowserToolbarPalette

<toolbarpalette id="BrowserToolbarPalette">
    <toolbarbutton id="YOURBUTTONID"
                   image='...'
                   class="..."
                   oncommand="..."
                   tooltiptext="">

    </toolbarbutton>
</toolbarpalette>

参考:ツールバー - コードスニペット

于 2013-09-22T10:38:54.423 に答える