2013-03-30 14 views
6

में jquery का उपयोग कर क्रोम एक्सटेंशन जो मैं बिल्ड कर रहा हूं उसे टैब से चयनित टेक्स्ट प्राप्त होता है जब उपयोगकर्ता पॉपअप में चयन बटन पर क्लिक करता है। मैं इसके लिए jquery का उपयोग करने की कोशिश कर रहा हूं।क्रोम एक्सटेंशन

manifest.json

{ 
    "manifest_version": 2, 

    "name": "cap", 
    "description": "BLAH", 
    "version": "1.0", 

    "permissions": [ "tabs", 
    "https://*/*","http://*/*" 
    ], 
    "content_scripts": [ 
    { 
    "matches": ["http://*/*","https://*/*"], 
    "js": ["selection.js"], 
    "run_at": "document_start", 
    "all_frames": true 
    } 
], 
    "browser_action": { 
    "default_icon": "icon.png", 
    "default_popup": "popup_main.html" 
    } 
} 

मैं इस स्क्रिप्ट पर कार्य मैं त्रुटि geting हूँ पर popup.html में jQuery स्क्रिप्ट

<html><head> 
<meta charset="utf-8"> 
<title>popup</title> 
<link rel="stylesheet" href="/popup.css"> 
<script type="text/javascript" src="popup.js"></script> 
<script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
<!-- <script type="text/javascript" src="js/tag-it.js"></script> --> 
</head> 
<body> 

</body></html> 

popup.js

$(document).ready(function(){ 
    $("p").click(function(){ 
     chrome.tabs.getSelected(null, function(tab) { 
    chrome.tabs.sendRequest(tab.id, {method: "getSelection"}, function (response) { 
     var text = document.getElementById('text'); 
     text.innerHTML = response.data; 
    }); 
    }); 
    }); 
}); 

को शामिल किया है :

Uncaught ReferenceError: $ परिभाषित नहीं किया गया है

कृपया मदद करें!

उत्तर

13

आप jQuery पहले लोड करने के लिए अनुमति देने के लिए अपने स्क्रिप्ट टैग के आदेश को बदलने की जरूरत:

<script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
<script type="text/javascript" src="popup.js"></script> 
+1

आपने मुझे 30 सेकंड से हराया :) –

6

बदलें आदेश है.आप jQuery कोर प्लगइन पहले और उसके बाद तो अन्य प्लग-इन

<script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
<script type="text/javascript" src="popup.js"></script> 
लोड करने के लिए है