Chrome-Erweiterung "$ ist nicht definiert" Fehler

Ich erhalte die Fehlermeldung "$ ist nicht definiert", wenn ich an meiner Chrome-Erweiterung arbeite.

Dies ist meine Manifest-Datei:

   {
      "name": "X",
      "description": "Snip this page",
      "version": "2.0",
      "permissions": [
        "activeTab"
      ],
      "background": {
        "scripts": ["background.js"],
        "persistent": false
      },
      "content_scripts":[{
        "matches" : ["<all_urls>"],
        "js": ["jquery-2.0.2.js","jquery.Jcrop.js"],
        "css": ["jquery.Jcrop.min.css"]
      }],
      "browser_action": {
        "default_title": "Snip this page"
      },
      "manifest_version": 2
    }

Dies ist meine background.js-Datei:

chrome.browserAction.onClicked.addListener(function(tab){
  // No tabs or host permissions needed!
  chrome.tabs.executeScript({
    file: 'content.js'
  });
});

Zuletzt die Datei, in der der Fehler ausgelöst wird: content.js

console.log('1');
var jcropapi, boundx, boundy;
$('body').attr('id', 'target');
$(document).ready(function(){
    $('target').Jcrop();
    console.log('4');
    document.onkeydown = function(){
        if(window.event.keyCode==13){
            console.log('enter');
        }
    };
});

Nach meinem Verständnis passiert dies, weil JQuery nicht geladen wird. Ich lade es jedoch ordnungsgemäß in das Manifest und jquery.js ist auch die erste Datei, die im Manifest-Inhaltsskript aufgerufen wird. Bitte helfen Sie mir beim Debuggen. Danke dir!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage