我正试图找到一种方法来计算当前在Chrome中通过javascript打开的多个标签。
我搜索并找到了chrome.tabs.query()
。但当我打开我的控制台并尝试它时,我得到了一个未定义的消息。
Chrome不再支持它,还是只能用于扩展程序开发?
它只能用于扩展开发。
您无法从document
级别访问该信息。
作为wscourge has implied,chrome.tabs.query()
是Chrome扩展程序API,仅适用于扩展程序,而不适用于网页JavaScript。实际上,它仅在扩展的后台上下文中可用(即不是内容脚本)。
要查找已打开的选项卡数,您可以执行以下操作:
chrome.tabs.query({windowType:'normal'}, function(tabs) {
console.log('Number of open tabs in all normal browser windows:',tabs.length);
});
如果要从控制台运行此命令,则需要加载具有后台页面的扩展。然后你需要打开the console for the background page。从该控制台,您可以执行上述代码。
我在这里找到了这个问题的答案:https://superuser.com/questions/967064/how-to-get-tab-count-in-chrome-desktop-without-app-extension
去chrome://inspect/#pages
在javascript控制台中运行以下代码行:
document.getElementById("pages-list").childElementCount
选项卡计数将打印到控制台。