In Chrome-Erweiterung, ich versuche, eine Nachricht vom Hintergrund-Skript zum Content-Skript zu senden. Ich erhalte keine Nachrichten im Inhaltsskript. Wo geht es falsch? Hier ist die background.jschrome.runtime.onMessage.addListener funktioniert nicht im Inhaltsskript
function createAlarm() {
chrome.alarms.create('bookcab', {
periodInMinutes: 1
});
}
chrome.alarms.onAlarm.addListener(function(alarm) {
if (alarm.name === 'bookcab') {
var url = 'http://cab/';
chrome.tabs.create({ url:url, active: true });
chrome.tabs.query({active:true}, function(tabs){
chrome.tabs.sendMessage(tabs[0].id, {"message": "sample_msg"});
});
}
});
createAlarm();
Und die content_script.js hat den folgenden Code,
chrome.runtime.onMessage.addListener(
function(request,sender,sendresponse) {
if(request.message === "sample_msg") {
console.log('message from content script');
}
}
);
Hier ist der manifest.json wenn es darauf ankommt
{
"manifest_version": 2,
"name":"bookcab",
"version":"0.1",
"background": {
"scripts":["background.js"]
},
"permissions": [
"alarms",
"tabs"
],
"content_scripts": [{
"matches":["<all_urls>"],
"js": ["content_script.js"],
"run_at" : "document_end"
}]
}