クローム拡張機能を構築しようとしていますが、ポップアップからコンテンツスクリプトにメッセージを送信できません。問題がどこにあるのか教えてください。クロムのポップアップスクリプトとコンテンツスクリプトの間の通信
ポップアップスクリプトコード:
$(document).ready(function(){
$('#button').click(function(){
chrome.tabs.query({active: true, currentWindow: true},function(tabs) {
chrome.tabs.sendMessage(tabs[0].id, {message: "hello"});
});
});
});
コンテンツのスクリプトコード:
chrome.extension.onMessage.addListener(
function(request, sender) {
alert("Contentscript has received a message from from background script: '" + request.message + "'");
});
これはmanifest.jsonを次のとおりです。
{
"manifest_version" : 2,
"name" : "First My Chrome Extension",
"version" : "0.0.1",
"description" : "The first web-app using chrome extension technology",
"icons" : {
"16" : "images/icon16px.png",
"48" : "images/icon48px.png",
"128" : "images/icon128px.png"
},
"background": {
"scripts": ["scripts/background.js"]
},
"browser_action" :{
"default_icon":{
"48" : "images/icon48px.png"
},
"default_title" : "Nghoangvutn",
"default_popup" : "popup.html"
},
"content_scripts":[
{
"matches":[
"<all_urls>"
],
"js" : [
"scripts/jquery.js",
"scripts/content.js"
]
}
],
"permissions" : [
"tabs",
"storage"
]
}
ポップアップおよびウェブページコンソールのエラー情報はありますか? –
エラー情報はありません。それだけで仕事はしません。メッセージの受け渡しが失敗した可能性があります。私は問題がどこにあるのか分かりません –
これらのリンクを確認してください:http://stackoverflow.com/questions/13646389/send-message-from-popup-to-content-script and http://stackoverflow.com/questions/6108906/chrome-extension-message-passing-from-pop-to-content-script – abielita