расширение chrome закрыть или обновить вкладки

Я хочу написать расширение, которое открывает одну и ту же страницу на 10 вкладках, а затем обновляет эти страницы с определенным интервалом. Если обновление невозможно, следует закрыть эти вкладки и открыть их снова. Прямо сейчас у меня есть javascript, работающий как фоновый скрипт

chrome.browserAction.onClicked.addListener(function(activeTab){

var openTabs = 0;
var tabArray = [];

promise = window.setInterval(function() {
    chrome.tabs.create({ url: "http://some.com/url/" });
    }, 2000);
});

Есть ли способ сохранить идентификаторы уже открытых вкладок?


person John Smith    schedule 08.03.2015    source источник


Ответы (1)


Да, есть способ сохранить идентификаторы вкладок, которые вы создали/открыли.

Когда вы вызываете chrome.tabs.create в параметре callback, вы получаете доступ к созданному объекту tab. . Затем у вас есть доступ к tabId, и вы можете сохранить его, используя localStorage, чтобы отслеживать их. Что-то вроде этого:

localStorage.setItem('tabIds',JSON.stringify([])) //init the store

chrome.tabs.create({ url: "http://some.com/url/" }, function (tab){
  var tabs = JSON.parse(localStorage.getItem('tabIds')); 
  tabs.push(tab.id);
  localStorage.setItem('tabIds',JSON.stringify(tabs)); //store array of tabsIds
});
person peterdotjs    schedule 08.03.2015