2009-05-21 25 views
36

Esta pregunta se ha formulado de manera similar before, pero parece que no puedo depurar Javascript en Google Chrome.Google Chrome Javascript Depurador y secuencias de comandos de contenido

Si voy a la página> desarrollador de la "depuración Javascript" (Ctrl +Shift +L) está desactivado. Alt + ` no funciona.

Estoy desarrollando una extensión 'script de contenido', así que voy a lanzar Chrome con --enable-extensions.

Lo que idealmente me gustaría hacer es establecer puntos de interrupción y paso/ejecutar a través de mi secuencia de comandos a medida que se ejecuta. Estoy un poco loco cuando se trata de JavaScript, por lo que se agradece cualquier orientación.

Puedo llegar a la 'Consola de JavaScript', pero no puedo encontrar las secuencias de comandos de contenido dentro de eso. Tampoco estoy seguro de cómo eso difiere del 'Depurador de JavaScript'.

Estoy utilizando la última versión de Dev de Chrome (2.0.181.1) en Windows XP.

+0

puede dejar la versión de Windows que está utilizando: XP, Vista, 7RC ... Sé que Chrome y Windows 7 no se llevan bien especialmente. – Joel

Respuesta

34

Todas estas respuestas parecen estar desactualizadas, y dado que esta clasificación es altamente en Google, aquí está la respuesta actualizada:

En Chrome, presione CTRL+SHIFT+i para abrir las herramientas de desarrollador.

Seleccione 'fuentes'

Haga clic en la flecha pequeña que le permite seleccionar entre los guiones enter image description here

luego seleccione 'guiones' contenido

enter image description here

A continuación, tendrá para conocer la identificación de su extensión (disponible desde la página de extensiones de administración de Chrome) para acceder a sus scripts y depurarlos como de costumbre.

+0

Wow, explosión del pasado. Realmente no recuerdo nada de esta pregunta/desarrollo de extensiones de Chrome, pero parece una respuesta sólida. Gracias por entrar. –

+0

Ya no es necesario que conozcas el ID de la extensión. ahora aparece listado por nombre. – Teepeemm

+0

Además, si arruinas la sección content_scripts de tu manifiesto, simplemente no verás y nuestra secuencia de comandos de contenido en la lista, error de silencio. Por ejemplo, si quisiera cargar uno para Facebook y poner solo https://www.facebook.com/ en content_scripts, terminaría sin tener que cargar cada vez que no estuviera en la página de inicio (sin asterisco posterior) o en enlaces que incluyen el dominio móvil (m.facebook.com), etc. –

7

Haga clic derecho y seleccione Inspeccionar elemento, allí encontrará el depurador JS, entre otras herramientas de depuración. El depurador JS debe permitirle establecer puntos de interrupción, etc.

+0

Bueno, esta es la consola de JavaScript, no el depurador. Parece haber una diferencia. Probablemente esté siendo muy denso aquí, pero no puedo encontrar una forma de insertar puntos de interrupción en el script en este punto. ¿Cómo veo una función de script de contenido que agregué como un receptor de eventos a un objeto en particular? p. Quiero poder depurar 'myFuncHere()' en this.addEventListener ('click', myFuncHere, true); –

+2

Si hace clic en el botón "Scripts" en la parte superior de la ventana del Inspector, ese debe ser el depurador. Puede seleccionar una fuente de secuencia de comandos particular desde un menú desplegable y luego hacer clic en el número de línea para establecer un punto de interrupción. – Scott

+0

Gracias por el consejo, Scott, pero no veo ninguno de mis scripts de usuario allí, solo los del sitio web propiamente dicho. ¿Me estoy perdiendo de algo? –

3

Lo que tiene que hacer es habilitar su extensión, luego en Chrome, haga clic en "Desarrollador" -> "Consola de Javascript". Luego haga clic en la pestaña "Scripts". Después de eso, debería ver una lista justo debajo de todos los scripts cargados. Verá scripts para la página actual, así como todos los scripts para las extensiones que haya instalado. (Si no ve ningún script listado después de abrir la consola, puede que tenga que actualizar)

Parece que a todas las extensiones de Chrome se les asigna un ID único. Puede encontrar su ID viendo la página Extensiones de Chrome en el Modo de desarrollador.

Luego, solo es cuestión de buscar entre los guiones en el menú desplegable del guión. Seleccione la secuencia de comandos y se puede establecer puntos de interrupción, etc.

Hay mucha más información sobre las herramientas de Chrome Dev aquí: http://www.chromium.org/devtools

44

Coloque el siguiente comando en el script:

debugger; 

que pondrá en marcha el depurador de Javascript cuando llega a ese punto

+0

¿Firebug admite esta posibilidad? –

+1

Creo que esto funciona en Firebug. ¿Por qué no intentarlo y responder aquí si funciona? :) – Rory

+3

Este es el mejor día de mi vida, gracias ! – Hassek

Cuestiones relacionadas