使用Firefox Add-on SDK在上下文菜单项上不显示图标

时间:2012-02-04 06:21:38

标签: contextmenu firefox-addon-sdk

这是文件的结构:

├── data
│   ├── icon.png
│   ├── upload.js
│   └── upload.js~
├── doc
│   └── main.md
├── icon.png
├── lib
│   ├── icon.png
│   ├── main.js
│   └── main.js~
├── package.json
├── package.json.backup
├── README.md
├── share2.xpi
└── test
    └── test-main.js

这是main.js中的代码:

const contextMenu = require("context-menu");
const data = require("self").data;
exports.main = function(options,callbacks){
    var cm = require("context-menu").Item({
        label:"share it",
        contentScriptFile:data.url("upload.js"),
    image:data.url("icon.png")
    });
}

"分享它"将显示在上下文菜单中,并且将执行contentScriptFile,但图像不会显示。我该如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

确保您使用的是充足版本的附加SDK; 'image'属性仅在1.1版中添加。如果您使用的是1.0,则需要更新。否则,它应该工作。

答案 1 :(得分:0)

我可能错了,但是从对Chris回答的评论来看,似乎问题不在于图标,而在于你的上传脚本。 可能是运行进程永远不会到达image属性来添加它。

如果完全删除图像属性,是否会出现相同的错误?

答案 2 :(得分:0)

试试这个,它对我有用:

var self = require("sdk/self");
require("sdk/context-menu").Item({
  label: "Buscar lugar geográfico...",
  contentScript: 'self.on("click", self.postMessage);',
  onMessage: function () {
    doSearch();
  },
  image:self.data.url("logo.png")
});