2012-04-10 4 views
63

Ich habe sehr einfache Erweiterung:Wie Debuggen Google Chrome Hintergrundskript?

manifest.json

{ 
    "name": "historyCleaner", 
    "version": "0.1.1", 
    "manifest_version": 1, 
    "description": "This is my first Chrome extension", 
    "background": { 
    "scripts": ["cleaner.js"] 
    }, 
    "permissions": [ 
    "history" 
    ] 
} 

cleaner.js

chrome.history.onVisited.addListener(function(HistoryItem result) { 

    console.log("it works!"); 
    alert("it works!"); 

}); 

Ich habe es in Google Chrome geladen ist, wird es eingeschaltet und ... es funktioniert nicht. Es protokolliert nichts in der Konsole, es alarmiert nichts und was schlimmer ist, kann ich nicht in den Entwicklern Tools "Scripts" Registerkarte finden. Wie kann ich herausfinden, warum es nicht funktioniert?

// bearbeiten

I manifest.json zu diesem geändert haben:

{ 
    "name": "historyCleaner", 
    "version": "0.1.5", 
    "manifest_version": 1, 
    "description": "This is my first Chrome extension", 
    "background_page": "background.html", 
    "permissions": [ 
    "history", 
    "background" 
    ] 
} 

Und embeded JavaScript in background.html

+1

Zuerst können Sie versuchen, 'HistoryItem' aus der ersten Zeile zu entfernen - Sie haben Syntaxfehler – hamczu

+0

Oh, ich bin dumm, ich habe es aus der Dokumentation eingefügt und darüber vergessen :). Aber es funktioniert immer noch nicht. – ciembor

Antwort

98

enter image description here

und auch wenn Ihr console.log("it works!"); nicht angezeigt, dann heißt das chrome.history.onVisited ist noch nicht gefeuert.

ps: Für können Sie es in function(result) ändern.

+0

Es gibt kein "aktives Skript" in der Nähe meiner Erweiterung :(. – ciembor

+0

Aktives Skript? Was ist das? –

+0

Zum Beispiel Ihre "background.html" :). In Polish Chrome heißt es "Zobacz aktywne" was "Sehen/Ansehen aktiv" bedeutet. – ciembor

11

Diese Antwort könnte zu spät sein, würde aber dem Rest helfen. Wenn Ihre background.html JavaScript-Fehler hat, wird die Seite nicht geladen (zu inspizieren).

Um herauszufinden, was mit Ihrer background.html falsch ist, klicken Sie unter chrome: // chrome/extensions/(d. H. Erweiterungen verwalten) auf den Link background.html. Dadurch werden die Entwicklerwerkzeuge ohne background.html geladen. Unten rechts im Fenster sehen Sie ein rotes Fehlersymbol, und wenn Sie darauf klicken, werden Zeilennummern angezeigt, die korrigiert werden müssen.