Firefox插件栏

时间:2014-05-21 11:14:21

标签: javascript firefox-addon

firefox(29)的最新更新删除了附加栏,我正在使用扩展程序,我正在使用它,就像它显示here

var mediator = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService(Components.interfaces.nsIWindowMediator);
var doc = mediator.getMostRecentWindow("navigator:browser").document;
var addonBar = doc.getElementById("addon-bar");

所以作为一种解决方法,我安装了 Addon Bar(已恢复),它返回了插件栏,但我不知道如何使用javascript动态添加元素。

1 个答案:

答案 0 :(得分:3)

使用CustomizeableUI.jsm

https://developer.mozilla.org/en-US/docs/Mozilla/JavaScript_code_modules/CustomizableUI.jsm

https://blog.mozilla.org/addons/2014/03/06/australis-for-add-on-developers-2/

Cu.import("resource:///modules/CustomizableUI.jsm");
CustomizableUI.createWidget(
  { id : "aus-hello-button",
    defaultArea : CustomizableUI.AREA_NAVBAR,
    label : "Hello Button",
    tooltiptext : "Hello!",
    onCommand : function(aEvent) {
      let win = aEvent.target.ownerDocument.defaultView;

      win.alert("Hello!");
    }
  });

要将其添加到插件栏,您必须创建一个新的默认区域并将其设置为插件栏。 通过函数registerToolbarNode() registerArea()执行此操作。这些信息之间的某些组合位于上面的文档页面上。分享你是怎么做的人我也很感兴趣。