2017-02-05 17 views
1

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}); 
    } 
}); 

上記のコードは、拡張機能内で開いたときに、現在のウィンドウのすべてのタブを更新します。同様の方法で、現在のウィンドウのタブだけでなく、すべてのウィンドウのすべてのタブを再読み込みできますか?

+1

https://developer.chrome.com/extensions/windows#method-getAll –

+0

例がありますか? – UndefinedUsername

+0

注:[chrome.tabs.getAllInWindow() '](https://developer.chrome.com/extensions/tabs#method-getAllInWindow)はChrome 33以降で非推奨になりました。ウィンドウは['chrome.tabs.query {windowId:windowID}'](https://developer.chrome.com/extensions/tabs#method-query)を使うことです。 – Makyen

答えて

2

あなたの質問は明確ではないので、正しく解釈していない可能性があります。私はそれがすべてのウィンドウのすべての既存のタブに "リフレッシュ"を適用することを意味すると理解しています。

これを行うには、chrome.tabs.query()を使用して既存のすべてのタブを特定のウィンドウに限定せずに取得できます。私は、あなたが通常のウィンドウにあるタブを "リフレッシュ"したいと仮定しました。何らかの理由で、あなたがしたい、場合「正常」

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}); 
    } 
}); 

を:あなたはすべてを行うにしたい場合はこれがその後、ちょうど `windowTypeを削除し、他の拡張機能が開かれていない「さわやか」のパネルなどになります1つのクエリではなくウィンドウ単位でウィンドウを表示することができます。chrome.windows.getAll()

+0

あなたは信じられません。まあダニに値する。 – UndefinedUsername

関連する問題