2010-07-09 18 views
38

¿Qué debo hacer para incluir la biblioteca jQuery en mi script de contenido de Google Chrome? Lo he intentado, infructuosamente, por supuesto. ¿Debo usar <script src="..." /></script>, o hay una manera diferente/mejor de hacerlo? ¡Gracias por adelantado!jQuery en Google Chrome Content Script?

Respuesta

59

Poniéndolo en segundo plano html no hace lo que desea. Debe mencionarlo en su manifest.json, así:

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

Poner en el background.html no hacer ... pero es obligatorio, no es así? –

+8

Gracias por esto. Si alguien hace esto pero todavía no lo hace funcionar, asegúrese de que jQuery sea el primero en la lista. – ebi

+1

@DanibISHOP - No. La página background.html es solo para el código que se ejecuta en segundo plano. Los scripts de contenido están en un contexto DOM diferente y se ejecutan en la página real y solo se comunican con la página de fondo utilizando postMessage o las API de mensajes de Chrome. – jmort253

0

La respuesta anterior funciona. Una respuesta alternativa que utiliza la inyección (que es lo que en realidad estaba buscando cuando encontré esta página en primer lugar) está aquí:

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

+4

La primera reacción a su respuesta es "malo, mátalo", pero luego tienes un punto. Por favor edite su respuesta; la regla sobre el desbordamiento de pila es que "las respuestas deberían ser útiles incluso si el enlace se apaga". Incluya un resumen/ejemplo aquí, y deje un enlace a la otra pregunta como "más detalles". Estaré encantado de votarte si haces esto. – Xan

Cuestiones relacionadas