Расширение Chrome: отправить сообщение из фона script в * все * вкладки

Есть ли способ, чтобы фон script информировал все открытые в данный момент вкладки (то есть их скрипты содержимого), что событие произошло.

Что-то вроде следующего в основном

chrome.tabs.sendMessage("*", {foo: "bar"})

Я подозреваю, что могу сохранить список открытых вкладок на фоне script, если это возможно, и использовать это. Но есть ли более простой способ?

Ответы

Ответ 1

Подстановочный знак не поддерживается. Единственный способ достичь всех вкладок - query всех существующих вкладок и отправить сообщение с помощью chrome.tabs.sendMessage.

chrome.tabs.query({}, function(tabs) {
    var message = {foo: bar};
    for (var i=0; i<tabs.length; ++i) {
        chrome.tabs.sendMessage(tabs[i].id, message);
    }
});