从延迟向后台发送消息到内容脚本?镀铬扩展

时间:2018-04-23 00:22:32

标签: javascript google-chrome-extension google-chrome-app content-script chrome-extension-async

我想从后台到内容脚本使用senMessage,但是我希望后台在特定时间后发送消息,这是我的代码:

背景:

chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
    if (msg.id == "openUrl") {
        var tabId = sender.tab.id;
        var url = msg.url;
        openUrl(tabId, url);
    } else if (msg.id == "background") {
        setTimeout(function() {
            chrome.tabs.query({
                active : true,
                currentWindow : true
            }, function(tabs) {
                chrome.tabs.sendMessage(tabs[0].id, {}, null);
            });
        }, 5000);
    }
});

我收到了以下错误:

**Error in response to tabs.query: TypeError: Cannot read property 'id' of undefined**

我不确定,为什么chrome api可以获得所选标签?

您可以在此处下载源文件:

https://drive.google.com/open?id=1_Hkedx8ldAeRWiFKTj4YEv_bXFUt-3CY

谢谢。

0 个答案:

没有答案