发送消息到活动选项卡

时间:2017-03-17 16:39:05

标签: javascript google-chrome-extension firefox-webextensions

我正在尝试向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以使其正常工作,这可能是问题,但我应该更改它?

0 个答案:

没有答案