我收到的错误消息是" $未定义"
我的清单文件的一部分:
"content_scripts": [
{
"matches": ["http://www.google.com/calendar/render*",
"https://www.google.com/calendar/render/*"],
"js": ["jquery.min.js", "jquery-ui.js", "script.js"],
"css": ["jquery.datepick.css", "jquery-ui.css"],
"run_at": "document_start"
}],
"background": {"scripts": ["background.js"]},
"web_accessible_resources": ["jquery.min.js", "script.js", "jquery-ui.js", "jquery.datepick.css", "jquery-ui.css"]
在我的background.js文件中,我正在尝试执行所需的脚本:
chrome.tabs.executeScript(tabId, {file: "jquery.min.js"}, function(){
chrome.tabs.executeScript(tabId, {file: "jquery-ui.js"}, function() {
chrome.tabs.executeScript(tabId, { file: 'script.js' });
});
});
但是,在script.js中,我无法使用任何Jquery函数(错误:$未定义)。
任何人都可以解释一下为什么它会失败,或者应该怎么做?
提前致谢。
答案 0 :(得分:0)
你的manifest.json和background.js看起来很好。如果你的扩展文件夹/包的根目录中有jquery文件,我只能想到两件事:
进行更改后,您没有重新加载扩展程序:
转到chrome:// extensions /,找到您的扩展程序,按'重新加载' (并确保它已启用)。
如果您没有使用'加载解包后的扩展程序'功能,您应该在进行更改后完全重新安装您的扩展程序。
要确保加载jQuery文件,请打开jquery.min.js并将console.log('jQuery file loaded')
添加到jquery.min.js
。如果您没有看到控制台消息,则可能jquery.min.js
已损坏(请尝试再次下载)。