我正在尝试使用contextMenu为FireFox开发WebExtension。目前我只有两个文件,没有真正的功能。即使使用Mozilla Developer Network中的示例代码,上下文菜单中的选项卡创建但单击功能的问题似乎也无法解决。
这是我的manifest.json文件:
{
"manifest_version": 2,
"name": "Search in",
"description": "Searches selected text in YouTube",
"version": "1.0",
"background": {
"scripts": ["ctmn.js"]
},
"permissions": [
"contextMenus",
"activeTab"
]
}
这是我的ctmn.js文件:
function onCreated(n) {
if (browser.runtime.lastError) {
console.log('Error:' + browser.runtime.lastError);
} else {
console.log("Item created successfully");
}
}
browser.contextMenus.create({
id: "YouTube",
title: 'YouTube',
contexts: ["selection"]
}, onCreated);
browser.contextMenus.create({
id: "separator-1",
type: "separator",
contexts: ["all"]
}, onCreated);
browser.contextMenus.onClicked.addListener(function(info, tab) {
switch (info.menuItemId) {
case "YouTube":
console.log('tab clicked');
break;
}
});
控制台中的我有错误:
main.91ddfe2b36c3.js中的getElementById()的Epmpy字符串:2:7526 mozilla脚本
(function (global, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
module.exports = global.document ? factory(global, true) : function (w) {
if (!w.document) {
throw new Error('jQuery requires a window with a document')
}
return factory(w)
}
} else {
factory(global)
}
})
我在脚本和清单"背景"中添加了jQuery给我的webextension。和" content_scripts"但它似乎仍然没有看到它。我不确定我是否写得正确。