How would I iterate through all tabs a user has open and then check if they have a particular HTML item with id = 'item'
?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You can make it like this :
chrome.tabs.getAllInWindow(null, function(tabs){
for (var i = 0; i < tabs.length; i++) {
chrome.tabs.sendRequest(tabs[i].id, { action: "xxx" });
}
});
After that to look after your item, if you can make it like this :
document.getElementById('item')
Don't forget that you can't manipulate the HTML by using the "background page" So the first code snip is for the background page, and the second have to be on a content script ;)
回答2:
It appears this method has been deprecated in favor of chrome.tabs.query
:
http://developer.chrome.com/extensions/tabs.html#method-query
So now you'd want to do:
chrome.tabs.query({}, function(tabs) { /* blah */ } );
Passing an empty queryInfo
parameter would return all of the tabs.
回答3:
I use this one
chrome.tabs.getAllInWindow(null, function(tabs) {
$.each(tabs, function() {
// u can use 'this.id' to work with evey tab
});
});