我在嘗試使用SDK製作Firefox擴展程序。 (如果我能避免XUL我很高興)即時更改erik vold toolbarbutton圖像
但我需要動態更改工具欄圖像。
我的lib/main.js(背景頁)是:
var tbb = require("toolbarbutton").ToolbarButton({
id: "My-button",
label: "My menu",
image: Data.url('off.png'),
onCommand: function(){
Tabs.open(Data.url("signin.html"));
}
});
tbb.setIcon({image:Data.url('on.png')});
console.log(tbb.image);
tbb.moveTo({
toolbarID: "nav-bar",
forceMove: false // only move once
});
tbb.image是正確的,但按鈕不被刷新。
我試圖改變包/的ToolBarButton-jplib/lib目錄/ toolbarbutton.js
function setIcon(aOptions) {
options.image = aOptions.image || aOptions.url;
getToolbarButtons(function(tbb) {
tbb.image = options.image;
tbb.setAttribute("image", options.image); // added line
}, options.id);
return options.image;
}
但它似乎並沒有刷新... 是埃裏克vold的LIB足夠的這種需求?
對不起,問這麼快,正確的方法是: 'tbb.moveTo({ toolbarID: 「導航欄」, forceMove:假//只能移動一次 }); // THEN: tbb.setIcon({image:Data.url('on.png')}); //或tbb.image = Data.url('on.png');' – t0staky