1
我带了一个现有的插件,它在谷歌搜索给定的单词。 这里是链接:选择文本,然后右键点击它https://addons.mozilla.org/en-US/firefox/addon/inline-google-search/?src=api无法将热键功能添加到Firefox插件
附加组件的作品,并在上下文菜单中得到一个选项来搜索它在谷歌。
下面是主要的js文件:
exports.main = function() {};
var panel = require("sdk/panel").Panel({
width:700,
height: 500,
contentURL: "about:blank",
onHide : function(){
this.contentURL = "about:blank"
}
});
var contextMenu = require("sdk/context-menu");
var menuItem = contextMenu.Item({
label: "Search Google Inline",
context: contextMenu.SelectionContext(),
contentScript: 'self.on("click", function() {' +
' var text = window.getSelection().toString();' +
' self.postMessage(text);' +
'});',
onMessage: function (selectionText) {
panel.contentURL = "https://www.google.co.in/search?q="+selectionText;
panel.show();
}
});
,这样选择文本,然后按Ctrl + Shift + d之后,对谷歌的文本进行搜索我加入的功能。
一些额外的线条在最后被我说:
var { Hotkey } = require("sdk/hotkeys");
var selection = require("sdk/selection");
var showHotKey = Hotkey({
combo: "accel-shift-d",
onPress: function() {
panel.contentURL = "https://www.google.co.in/search?q="+selection.text;
panel.show();
}
});
上面的代码中,我从这里找到:Access selected text within a Hotkey object
也有一个文件线束options.json,这在我更新sha256 main.js文件的总和,并在manifest部分中添加了sdk/hotkeys和sdk/selection的需求。
但插件安装失败后的工作。即使上下文菜单选项也不会再出现。所以看起来我破坏了代码。
什么可我是做错了什么?
是啊,我只是跑你的代码,它为我工作得很好。 – canuckistani 2014-11-04 01:13:30