Chrome 拡張機能を作成していますが、コンテンツ スクリプトとメッセージ パッシングのしくみについて非常に混乱しています。以下に、拡張機能の目標とこれまでのコードについて詳しく説明します。
拡張機能は次のことを行う必要があります。
- すべてのウェブページでアクティブにする
- ユーザーがアクセスしている各サイトからメタデータ (具体的にはキーワード) を収集する
- 拡張機能がキーワードを分析し、それに応じて動作できるように、メタデータを拡張機能に戻します。拡張機能は、サイトのカテゴリ (ソーシャル メディア、ブログ、スポーツ サイトなど) に応じて異なるテキストを表示します]
拡張機能のアイコンをクリックすると、通常のテキストがポップアップ表示されるため、popup.html のコードは含めていません。
これまでの私のファイル:
マニフェスト.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 のドキュメントを読みましたが、理解できません。前もって感謝します!