Chrome-Extension: перебирать все вкладки?

Как бы я перебирал все вкладки, открытые пользователем, а затем проверял, есть ли у них определенный элемент HTML с id = 'item'?

Ответ 1

Вы можете сделать это следующим образом:

chrome.tabs.getAllInWindow(null, function(tabs){
    for (var i = 0; i < tabs.length; i++) {
    chrome.tabs.sendRequest(tabs[i].id, { action: "xxx" });                         
    }
});

После этого, чтобы следить за вашим товаром, вы можете сделать это следующим образом:

document.getElementById('item')

Не забывайте, что вы не можете манипулировать HTML с помощью "справочной страницы". Итак, первый снимок кода предназначен для фоновой страницы, а второй - для контента script;)

Ответ 2

Похоже, этот метод устарел в пользу chrome.tabs.query:

http://developer.chrome.com/extensions/tabs.html#method-query

Итак, теперь вы хотите сделать:

chrome.tabs.query({}, function(tabs) { /* blah */ } );

Передача пустого параметра queryInfo приведет к возврату всех вкладок.

Ответ 3

Я использую этот

chrome.tabs.getAllInWindow(null, function(tabs) {
      $.each(tabs, function() {
        // u can use 'this.id' to work with evey tab 
      });
});