作为Chrome扩展程序的新手,我希望有一种相当简单的方法来使它产生更改。
chrome.tabs.getAllInWindow(null, function(tabs) {
for(var i = 0; i < tabs.length; i++) {
chrome.tabs.update(tabs[i].id, {url: tabs[i].url});
}
});
上面的代码在扩展程序中打开后,将刷新当前窗口的所有标签。有没有类似的方法可以让我重新加载所有窗口中的所有标签,而不仅仅是重新加载当前窗口中的标签?
最佳答案
您的问题不太清楚,因此我可能没有正确解释。我了解它的意思是您要对所有窗口中的每个现有选项卡应用“刷新”。
为此,您可以使用chrome.tabs.query()
来获取所有现有选项卡,而不必将其限制为任何特定窗口。我假设您只想“刷新”普通窗口中的选项卡。这将导致不“刷新”其他扩展已打开的面板,等等。如果您想做所有事情,则只需删除“ windowType:'normal'
chrome.tabs.query({windowType:'normal'}, function(tabs) {
for(var i = 0; i < tabs.length; i++) {
chrome.tabs.update(tabs[i].id, {url: tabs[i].url});
}
});
如果由于某种原因要逐个窗口而不是一次查询地进行操作,则可以从
chrome.windows.getAll()
获取窗口列表关于javascript - 刷新所有窗口中的所有标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42048503/