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(还原),该Addon Bar返回了Addon栏,但是我不知道如何使用javascript动态向其添加元素。

最佳答案

使用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()执行此操作,这些信息之间的某些组合位于上面的doc页面上。分享您的操作方式,我也很感兴趣。

关于javascript - Firefox附加栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23781608/

10-13 00:36