You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否通过chrome.tabs.query()方法仅查询Chrome新标签页?

解答

不能仅通过chrome.tabs.query()的queryInfo内置配置直接筛选出新标签页(new tab),官方提供的queryInfo参数里确实没有对应这个筛选需求的键,需要先查询拿到标签列表后,自行做二次匹配判断。

新标签页的匹配规则

你可以结合以下特征做判断,覆盖绝大多数场景:

  • Chrome原生新标签页加载完成后,tab.url固定为chrome://newtab/
  • 刚打开尚未完成加载的新标签页,tab.pendingUrl属性值为chrome://newtab/,此时tab.url可能为空字符串
  • 如果用户安装了第三方扩展替换默认新标签页,可以追加对应扩展页面的地址匹配规则,这类页面地址一般以chrome-extension://开头
  • 不建议仅通过tab.title判断,不同语言版本的Chrome新标签页标题文本不同,很容易出现漏判、错判

实现示例

// 查询当前窗口的全部标签
chrome.tabs.query({ currentWindow: true }, (tabs) => {
  const newTabList = tabs.filter(tab => {
    const targetUrl = tab.url || tab.pendingUrl || '';
    // 此处可按需追加自定义新标签页的url匹配规则
    return targetUrl === 'chrome://newtab/';
  });
  // newTabList就是所有匹配到的新标签页
  console.log(newTabList);
});

chrome new tab


内容的提问来源于stack exchange,提问作者Mohammad Faisal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 00:15:54