Javascript 如何在单击上下文菜单时调用预定义函数?
我已经为我的插件在页面上添加了上下文菜单项。单击此上下文菜单项时,我希望执行一个预定义的函数,但我无法找到执行该函数的方法 这是上下文菜单的代码Javascript 如何在单击上下文菜单时调用预定义函数?,javascript,jquery,function,firefox,firefox-addon,Javascript,Jquery,Function,Firefox,Firefox Addon,我已经为我的插件在页面上添加了上下文菜单项。单击此上下文菜单项时,我希望执行一个预定义的函数,但我无法找到执行该函数的方法 这是上下文菜单的代码 var contextMenu = require("sdk/context-menu"); var menuItem = contextMenu.Item({ label: "Log Selection", contentScript: 'self.on("click", onClick);', }); function onClick(s
var contextMenu = require("sdk/context-menu");
var menuItem = contextMenu.Item({
label: "Log Selection",
contentScript: 'self.on("click", onClick);',
});
function onClick(state) {
//This function calls many other functions thus can not be defined locally
console.log("onClick() called");
}
假设有一个
函数onClick()
,需要在单击上下文菜单时调用该函数。如何调用onClick()
函数?这应该适合您。从“我的扩展名”修改,该扩展名返回单击节点的信息
function unassignUSER(upChange) {
console.log("onClick() called");
}
var contextMenu = require("sdk/context-menu");
var menuItem = contextMenu.Item({
label: "Log Selection",
contentScript: 'self.on("click", function (node) {' +
' var upChange = "data"' +
' self.postMessage(upChange);' +
'});',
onMessage: function (upChange) {
unassignUSER(upChange);
}
});
将
oncommand
与菜单项一起使用,它更好地响应键盘。@Noitidart我没听清楚,请再解释一下。我自己也不太确定这是一个sdk特有的问题,我想。我只知道onCommand是首选的方法,但sdk开发人员必须在其余时间回复您:(