2012-04-10 3 views
63

У меня есть очень простое расширение:Как отладить фоновый скрипт Google Chrome?

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!"); 

}); 

Я загрузил его в Google Chrome, он включен, и ... его не работает. Он ничего не записывает в консоли, он ничего не предупреждает, а что хуже, я не могу найти его в вкладках инструментов разработчика «Сценарии». Как я могу найти, почему это не работает?

// редактировать

Я изменил manifest.json к этому один:

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

и поместить его в JavaScript background.html

+1

Сначала вы можете попробовать удалить «HistoryItem» с первой строки - у вас есть синтаксическая ошибка – hamczu

+0

О, я дурак, я вставил ее из документации и забуду об этом :). Но это все еще не работает. – ciembor

ответ

98

enter image description here

, а также, если ваш console.log("it works!"); не появляется, то это означает, что chrome.history.onVisited еще не выпущен.

ps: Для function(HistoryItem result), вы можете изменить его на function(result).

+0

У моего расширения нет «активного скрипта» :( – ciembor

+0

Активный скрипт? Что это такое? –

+0

Например, ваш «background.html» :). В польском Chrome это называется «Zobacz aktywne», что означает «Смотреть/смотреть активно». – ciembor

11

Этот ответ может быть запоздалым, но поможет остальным. если ваш background.html имеет ошибки javascript, тогда страница не загружается (для проверки).

Чтобы узнать, что случилось с вашим background.html, под chrome: // chrome/extensions/(т. Е. Управлять расширениями), нажмите ссылку background.html. Это загрузит инструменты разработчика, но без background.html. В правом углу окна, вы увидите красный символ ошибки, и нажатие на него предоставит номера строк, которые необходимо устранить.

Смежные вопросы