我正在尝试向Chrome中的有效标签发送消息
function sendMessageToCurrentTab(){
var args = Array.prototype.slice.call(arguments); //Get arguments as an array
if(typeof browser !== 'object' || typeof args[args.length - 1] === 'function') {
//Either is Chrome, or we have a callback function
chrome.tabs.query({active:true,currentWindow:true},function(tabs){
args.unshift(tabs[0].id); //Add tab ID to be the new first argument.
chrome.tabs.sendMessage.apply(this,args);
});
return;
}//else
return browser.tabs.query({active:true,currentWindow:true}).then(function(tabs){
args.unshift(tabs[0].id); //Add tab ID to be the new first argument.
return browser.tabs.sendMessage.apply(this,args);
});
}
chrome.runtime.onMessage.addListener((command) => {
chrome.tabs.executeScript({
file:'core.js'
}, function(){
sendMessageToCurrentTab("test");
});
});
但它似乎没有用。为什么?在Firefox中它可以工作,但是我将事件监听器更改为chrome.runtime.onMessage.addListener
以使其正常工作,这可能是问题,但我应该更改它?