chrome 扩展关闭或更新标签

chrome extension close or update tabs

我想编写一个扩展程序,它可以在 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);
});

有没有办法保存我已经打开的标签页的 ID?

是的,有一种方法可以保存您拥有的选项卡的 ID created/opened。

当您在 callback 参数中调用 chrome.tabs.create 时,您可以访问创建的 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
});