Chrome扩展程序:2个打开的窗口中的活动标签是什么?

时间:2013-06-12 22:24:14

标签: google-chrome google-chrome-extension

我有一个扩展,需要知道活动标签上的URL是什么,但问题是,当我打开第二个Chrome窗口时,有两个活动标签,在网站管理员工具中它没有给我任何指示我实际上在什么窗口。 enter image description here 当我拍摄这个截图时,我实际上是在第二个窗口。

我使用的代码是:

chrome.tabs.query({'active': true}, function (tabs) {
    app.tabInfo = tabs[0];
});

但好的代码应该是app.tabInfo = tabs[1];,但我需要知道我需要选择那个。那我怎么知道?

谢谢。

2 个答案:

答案 0 :(得分:8)

进行查询以选择最后关注的窗口:

chrome.tabs.query({ active: true, lastFocusedWindow: true }, function (tabs) {
  //...
}

注意:最好不要使用currentWindow: true,因为:

  

当前窗口是包含当前正在执行的代码的窗口。重要的是要意识到这可能与最顶层或聚焦窗口不同。

来源:http://developer.chrome.com/extensions/windows.html#current-window

答案 1 :(得分:1)

使用chrome.windows.getCurrent()(或.getLastFocused(),在其下方)获取当前窗口,然后在返回窗口的tabs属性中查找活动选项卡。