Я создаю расширение Chrome и очень запутался в том, как работают сценарии контента и передача сообщений. Ниже я подробно описываю цели моего расширения и код, который у меня есть.
Расширение должно:
- Быть активным для всех веб-страниц
- Соберите метаданные (в частности, ключевые слова) с каждого сайта, на котором находится пользователь.
- Передайте метаданные обратно в расширение таким образом, чтобы расширение могло анализировать ключевые слова и действовать соответствующим образом. Расширение будет отображать разный текст в зависимости от категории сайта (например, социальные сети, блог, спортивный сайт)]
Я не включил код для popup.html, так как я могу получить обычный текст во всплывающем окне, когда вы щелкаете значок моего расширения.
Мои файлы на данный момент:
manifest.json
"manifest_version": 2,
"name": "my extension",
"description": "This is my first chrome extension.",
"version": "1.0",
"content_scripts": [ {"matches": ["<all_urls>"], "run_at": "document_end", "js["testscript.js"] }],
"permissions": ["tabs", "http://*/*", "background"],
"background": "background.html",
"browser_action": { "default_icon": "my_logo.png", "default_popup": "popup.html" }
contentscript.js
var meta_keywords = getKeywords();
chrome.extension.sendRequest(meta_keywords);
function getKeywords() {
data = document.getElementsByTagName("meta");
keywords = [];
var len = data.length;
for (var i = 0; i < len; i++) {
if (data[i].name == 'keywords') {
keywords = data[i].content.split(",");
}
}
return keywords;
}
background.html
//I really have no idea what this means or how to use it...
//I just know that I need some sort of onRequest function
chrome.extension.onRequest.addListener(function(keywords, sender, sendResponse) {})
Любая помощь будет принята с благодарностью. Я прочитал множество руководств и документацию Google, но я просто не понимаю. Заранее спасибо!
chrome.runtime.sendMessage
/onMessage
вместоchrome.extension.*
. - person Rob W   schedule 06.07.2013