0
我的擴展程序在背景頁面和內容腳本中都定義了chrome.runtime.onMessage.addListener()
。一些消息需要被背景頁面捕獲,其他消息需要被內容腳本捕獲。我的問題是,由於某種原因,我的一個內容腳本不能捕獲消息。Chrome擴展程序:處理多個消息偵聽器
我的背景頁面包含:
chrome.runtime.onMessage.addListener(function (msg, sender, respond) {
if (msg["injectCss"]) {
chrome.runtime.sendMessage({ beginInject: msg.injectCss.files.length });
injectCss(sender.tab.id, msg.injectCss.files, 0, function() {
chrome.runtime.sendMessage({ endInject: true });
respond();
});
}
});
我的內容腳本包含:
chrome.runtime.onMessage.addListener(function (msg, sender, respond) {
if (msg["beginInject"]) {
//do something
respond();
}
});
當chrome.runtime.sendMessage({ beginInject: msg.injectCss.files.length });
會從後臺頁面調用,後臺頁面本身捕捉消息,而不是內容腳本。
問:有沒有辦法將郵件標記爲「尚未處理」,以便其他聽衆可以有機會捕捉並處理它?