5

我有一个 Google Chrome 扩展程序,其中有一个 background.js,我正在尝试在其中使用 JQuery。

出现以下错误。

Uncaught ReferenceError: $ is not defined

我的清单文件代码部分

 "content_scripts": [
    {
      "matches": ["<all_urls>"],
      "js": ["script.js", "jquery.js","front.js"]
    }
  ],
  "web_accessible_resources": ["https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"],
  "content_security_policy": "script-src 'self' https://ajax.googleapis.com; object-src 'self'",

我无法获得在此扩展中使用 JQuery 函数的任何线索。如果您需要更多理由,请告诉我。

编辑#1:清单文件

{
  "name": "Tool",
  "description": "Extension",
  "manifest_version": 2,
  "version": "5.0.0.0",
  "manifest_version": 2,
  "background": { "scripts": ["background.js"] },
  "permissions": [
    "tabs", "http://*/*", "https://*/*", "storage"
  ],
  "options_page": "options.html",
  "icons":{"16": "images/F_icon_16x16.png",
           "48": "images/F_icon_48x48.png",
          "128": "images/F_icon_128x128.png"},
  "content_scripts": [
    {
      "matches": ["<all_urls>"],
      "js": ["jquery.js", "script.js", "front.js"]
    }
  ],
  "content_security_policy": "script-src 'self' ; object-src 'self'",
  "browser_action": {
      "default_title": "Tool",
      "default_icon": "images/F_icon.png"
  }
}
4

1 回答 1

6

改变这部分:

"js": ["script.js", "jquery.js","front.js"]

对此:

"js": ["jquery.js","script.js","front.js"]

该行的顺序是包含文件的顺序。所以你首先需要 jquery.js 来定义 $ (用于 jquery),然后是你的脚本的其他脚本......

于 2012-12-04T12:35:38.917 回答