0

我为我的 Chromium (18.0.1025.151) 浏览器安装了扩展 timeStats,但它无法正常工作。在调试过程中我发现了问题 - 在方法 'chrome.tabs.query' 的执行过程中,一条消息是:“Property 'currentWindow': Unexpected property.”,尽管此参数的文档描述为: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 });
            }
        });
    });
}
4

1 回答 1

2

您正在非常旧版本的 Chromium (18) 上对此进行测试,并且您在问题中提到的文档指的是 Chromium 版本 20。如果您检查扩展 API 的更改,您会发现:

谷歌浏览器 19

(...)

chrome.tabs query() 方法现在具有 currentWindow 和 lastFocusedWindow 参数。

(...)

因此currentWindow在 19 之前的版本中不可用。


奖金:

如果您依赖,请currentWindow务必将minimum_chrome_version设置为 19 in manifest.json.

于 2012-07-27T07:33:42.990 回答