2013-03-30 11 views
6

rozszerzenie chrome buduję pobiera wybrany tekst z otwartej karty, gdy użytkownik kliknie przycisk wyboru w popup.I staram się używać jquery do tego.przy użyciu jquery w chrome extension

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" 
    } 
} 

mam włączone skrypt jquery w popup.html

<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; 
    }); 
    }); 
    }); 
}); 

na wykonanie tego skryptu jestem geting błąd :

Uncaught ReferenceError: $ nie jest zdefiniowane

prosze o pomoc!

Odpowiedz

13

Trzeba zmienić kolejność tagu script, aby umożliwić jQuery załadować pierwszy:

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

pokonałeś mnie o 30 sekund :) –

6

zmienić kolejność .you trzeba załadować plugin jquery rdzenia, a potem następnie inne wtyczki

<script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
<script type="text/javascript" src="popup.js"></script> 
Powiązane problemy