Firefox扩展程序未显示图标

时间:2015-10-05 05:03:15

标签: firefox firefox-addon firefox-addon-sdk firefox-developer-tools

我已经实现了示例mozilla firefox扩展,以在工具栏上显示firefox图标(操作按钮),它将打开“http://www.mozilla.org/”。 它在jpm运行中工作正常,然后我使用jpm xpi创建了包,并创建了xpi文件。然后我将它安装在我的Firefox浏览器中并成功安装但无效。 无法在工具栏上添加firefox图标(操作按钮)(控制台中没有错误)。

以下是代码。

index.js

var buttons = require('sdk/ui/button/action');
var tabs = require("sdk/tabs");

var button = buttons.ActionButton({
  id: "mozilla-link",
  label: "Visit Mozilla",
  icon: {
    "16": "./icon-16.png",
    "32": "./icon-32.png",
    "64": "./icon-64.png"
  },
  onClick: handleClick
});

function handleClick(state) {
  tabs.open("http://www.mozilla.org/");
}

的package.json

{
  "title": "Sample",
  "name": "sample",
  "version": "0.0.1",
  "description": "Sample AddOn",
  "main": "index.js",
  "author": "Sample",
  "engines": {
    "firefox": ">=30.0a1",
    "fennec": ">=30.0a1"
  },
  "license": "MIT"
}

我已经使用 - https://developer.mozilla.org/en-US/Add-ons/SDK/Tutorials/Getting_Started_%28jpm%29

实现了这一点

请帮助。

由于

2 个答案:

答案 0 :(得分:2)

为了使图标可见,您必须在扩展程序中创建一个data目录并将图标放在那里。

答案 1 :(得分:0)

你错过了本课程中的一个项目...... 你需要创建"数据"您的扩展名根目录中的目录,以及您必须放入此文件夹的所有内容。 在我的例子中,我使用它:

var button = this.buttons.ActionButton({
            id: "show-panel",
            label: "Show Panel",
            icon: {
                "16": "./icon/x16.png",
                "32": "./icon/x32.png",
                "64": "./icon/x64.png"
            },
            onClick: function(state) {
              // ...
            }
        });

我的结构如下: MyExtensionName /数据/图标/ [ .PNG, .ICO]

但您也可以使用扩展程序的内部链接:

资源:// EXTENSIONNAME / ...

icon: {
  "16": "resource://extensionname/data/icon/x16.png",
  "32": "resource://extensionname/data/icon/x32.png",
  "64": "resource://extensionname/data/icon/x64.png"
}