在Chrome扩展开发的教程中提到,我可以包括jQuery的我manifest.json
文件中使用它的内容脚本,像这样:JQuery不适用于我的Google Chrome扩展程序,内容脚本?
"content_scripts": [
{
"matches": ["http://www.google.com/*"],
"css": ["mystyles.css"],
"js": ["jquery.js", "myscript.js"]
}
],
我这样做。但是,当我打开JavaScript控制台并单击我的扩展的浏览器操作图标时,我看到错误:“Uncaught ReferenceError:$未定义”。
我该怎么做!?我不明白什么是错的。
更新从OP,最初发布的答案:
按照要求,这里是我的完整清单和内容脚本示例。 manifest.json的:
"name": "My Extension",
"version": "1.0",
"manifest_version": 2,
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title": "My Extension"
},
"background": {"page": "background.html"},
"content_scripts": [{
"matches": ["http://*/*","https://*/*"],
"js": ["jquery-1.8.3.js","content.js"]
}],
"permissions": ["tabs", "http://*/*", "https://*/*"]
内容脚本片段:
var message = $('body').width();
chrome.extension.sendMessage (message);
重新rsanchez的答案。 我会尽力详细解释。众所周知,我们可以打开两个javascript控制台。第一个与扩展的popup.html关联,第二个与当前打开的网页关联。我有以下的内容脚本,脚本包含在popup.html
var = bodyWidth$('body').width();
console.log(bodyWidth);
当我打开与当前打开的网页我收到错误上述关联的控制台代码段(例如),但是当我打开JS控制台关联使用扩展名的popup.html,我可以看到控制台中显示的身体宽度。 popup.html中包含的平均脚本指的是jQuery库和内容脚本。
内容脚本与浏览器操作不一样。请在您的问题中包含定义和处理浏览器操作的相关部分。 – rsanchez
请问,部分是什么?你能详细告诉我吗?我有popup.html中包含的内容脚本和脚本(每次单击浏览器操作时都会运行此脚本)。 – anykey3
请在下面看到我的回答 – rsanchez