我已经实现了示例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
实现了这一点请帮助。
由于
答案 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"
}