我无法在 Google Chrome 用户脚本中加载 jQuery。
这就是我的 manifest.json 的样子:
{
//...
"content_scripts" : [{
"js" : ["http://code.jquery.com/jquery-1.7.1.js", "code.js"],
//...
}],
//...
}
但在 code.js
中,$
是 未定义
。
code.js
否则可以工作,实际上我有一个小书签正在工作(使用该网站的 jQuery 版本)。
我尝试过缩小版本和未缩小版本的 jQuery,托管版本或本地版本。
我还尝试在我的 code.js
顶部嵌入一个缩小的 jQuery,但如果我这样做,代码甚至不会运行,实际上整个文件都不会运行(甚至在缩小的 jQuery block 之前发出警报)。
如果你想看的话,here it is .
最佳答案
根据 zip 中提供的 manifest.json,Chrome 在解压时向我发送了两个错误。
- Invalid value for 'content_script[0].matches[0]': Missing scheme seperator.
- Could not load javascript 'http://code.jquery.com/jquery-1.7.1.js' for content script.
第一个表示您的 matches
语句格式不正确。在您的*
之后你应该添加 ://
像这样:
"matches" : ["*://my.deviantart.com/messages/*"]
第二个是关于您尝试从外部资源加载 jquery。如果您更改本地文件的路径,它应该可以工作。
"js" : ["jquery.js", "code.js"],
当我 console.log($)
在你的code.js
这些调整后的文件 jquery 似乎工作得很好。
编辑:
请注意,您需要将以下内容添加到 html(在 <head>
部分中):
<script src='./jquery.js'></script>
关于javascript - jQuery 未在 Google Chrome content_script 扩展中加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8973005/