chrome.tabs.query:属性“currentWindow”:意外
2012-07-27
2251
我为我的 Chromium (18.0.1025.151) 浏览器安装了扩展 timeStats,但它无法正常工作。在调试过程中,我发现了问题 - 在执行方法“chrome.tabs.query”期间,出现一条消息:“属性‘currentWindow’:意外属性。”, 尽管此参数的文档描述为: http://code.google.com/chrome/extensions/tabs.html#method-query
这是一个错误还是可以修复错误?
一些代码:
if (isWindowActive && !isWindowMinimized)
{
chrome.idle.queryState(parseInt(options.idle_time), function(state) {
//problem below
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
//problem above
var tabId = tabs[0].id;
if (state=='active')
{
setBadgeColorActive(chrome.windows.WINDOW_ID_CURRENT);
//if browser active update the info
if (isLoaded)
{
update(true);
}
}
//set icon gray
else
{
chrome.browserAction.setBadgeBackgroundColor({color: badgeIdle, tabId: tabId});
chrome.browserAction.setTitle( {title: chrome.i18n.getMessage("freezed")+" "+options.idle_time+" "+chrome.i18n.getMessage("seconds_lcase"), tabId: tabId });
}
});
});
}
1个回答
您正在相当老的 Chromium 版本 (18) 上测试此问题,而您在问题中提到的文档指的是 Chromium 版本 20。如果您查看 扩展 API 的更改 ,您会发现:
Google Chrome 19
(...)
The chrome.tabs query() method now has the currentWindow and lastFocusedWindow parameters.
(...)
因此
currentWindow
在版本 19 之前不可用。
奖励:
如果您依赖
currentWindow
,请确保在
manifest.json
中将
minimum_chrome_version
设置为 19。
Konrad Dzwinel
2012-07-27