2010-07-09 17 views
38

Come faccio ad includere la libreria jQuery nel mio script di contenuto di Google Chrome? Ho provato, inutilmente, naturalmente. Dovrei usare <script src="..." /></script>, o c'è un modo diverso/migliore per farlo? Grazie in anticipo!jQuery in Google Chrome Content Script?

risposta

59

Inserirlo nello sfondo. Html non fa quello che vuoi. È necessario menzionare nel vostro manifest.json, in questo modo:

{ 
    "name": "MyExtension", 
    "version": "0.1", 
    "description": "blah blah", 
    "background_page": "background.html", 
    "content_scripts": [ 
    { 
     "matches": ["http://*/*","https://*/*"], 
     "css": ["extension.css"], 
     "js": ["jquery-1.4.2.js", "extension.js"] 
    } 
    ] 
} 
+0

Mettere nel background.html non lo fa ... ma è obbligatoria, non è vero? –

+8

Grazie per questo. Per chiunque lo faccia ma non riesce a farlo funzionare, assicurati che jQuery sia il primo elencato. – ebi

+1

@DanibISHOP - No. La pagina background.html è solo per il codice che viene eseguito in background. Gli script di contenuto si trovano in un contesto DOM separato e vengono eseguiti sulla pagina effettiva e comunicano solo con la pagina in background utilizzando postMessage o le API di messaggistica di Chrome. – jmort253

0

I lavori risposta di cui sopra. Una risposta alternativa che utilizza l'iniezione (che è quello che stavo veramente cercando quando ho trovato questo sito prima) è qui:

Google Chrome Extensions: How to include jQuery in programmatically injected content script?

+4

La prima reazione alla tua risposta è "cattivo, uccidilo", ma poi hai un punto. Per favore modifica la tua risposta; la regola su Stack Overflow è che "le risposte dovrebbero essere utili anche se il collegamento non funziona". Includi qui un riepilogo/esempio e lascia un link all'altra domanda come "maggiori dettagli". Sarò felice di cambiare se lo farai. – Xan

Problemi correlati