chrome.tabGroups

说明

使用 chrome.tabGroups API 与浏览器的标签页分组系统进行交互。您可以使用此 API 在浏览器中修改和重新排列标签页分组。如需将标签页分组和取消分组,或查询分组中的标签页,请使用 chrome.tabs API。

权限

tabGroups

可用性

Chrome 89 及更高版本 MV3+

类型

Color

组的颜色。

枚举

TabGroup

属性

  • 已收起

    boolean

    是否收起群组。收起的组是指其标签页处于隐藏状态的组。

  • 颜色

    组的颜色。

  • id

    number

    群组的 ID。群组 ID 在浏览器会话中是唯一的。

  • title

    字符串(可选)

    群组的标题。

  • windowId

    number

    包含该组的窗口的 ID。

属性

TAB_GROUP_ID_NONE

表示群组不存在的 ID。

-1

方法

get()

Promise
chrome.tabGroups.get(
  groupId: number,
  callback?: function,
)

检索有关指定群组的详细信息。

参数

  • groupId

    number

  • callback

    函数(可选)

    callback 参数如下所示:

    (group: TabGroup)=>void

返回

  • Promise<TabGroup>

    Chrome 90 及更高版本

    Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。

move()

Promise
chrome.tabGroups.move(
  groupId: number,
  moveProperties: object,
  callback?: function,
)

将组及其所有标签页(位于新窗口中)或移至新窗口。

参数

  • groupId

    number

    要移动的群组的 ID。

  • moveProperties

    对象

    • 索引

      number

      要将组移到的位置。使用 -1 将组放置在窗口末尾。

    • windowId

      数字可选

      要将群组移至的窗口。默认为组当前所在的窗口。请注意,您只能将群组移至或移出具有 windows.WindowType 类型为 "normal" 的窗口。

  • callback

    函数(可选)

    callback 参数如下所示:

    (group?: TabGroup)=>void

    • 群组

      TabGroup 可选

      有关已移动群组的详细信息。

返回

  • Promise<TabGroup|未定义>

    Chrome 90 及更高版本

    Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。

query()

Promise
chrome.tabGroups.query(
  queryInfo: object,
  callback?: function,
)

获取具有指定属性的所有组;如果未指定属性,则获取所有组。

参数

  • queryInfo

    对象

    • 已收起

      布尔值 选填

      是否收起群组。

    • 颜色

      颜色(可选)

      组的颜色。

    • title

      字符串(可选)

      将群组标题与模式进行匹配。

    • windowId

      数字可选

      父窗口的 ID,或 windows.WINDOW_ID_CURRENT(对应于当前窗口)。

  • callback

    函数(可选)

    callback 参数如下所示:

    (result: TabGroup[])=>void

返回

  • Promise<TabGroup[]>

    Chrome 90 及更高版本

    Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。

update()

Promise
chrome.tabGroups.update(
  groupId: number,
  updateProperties: object,
  callback?: function,
)

修改组的属性。系统不会修改未在 updateProperties 中指定的属性。

参数

  • groupId

    number

    要修改的群组的 ID。

  • updateProperties

    对象

    • 已收起

      布尔值 选填

      是否应收起组。

    • 颜色

      颜色(可选)

      组的颜色。

    • title

      字符串(可选)

      群组的标题。

  • callback

    函数(可选)

    callback 参数如下所示:

    (group?: TabGroup)=>void

    • 群组

      TabGroup 可选

      关于更新后的群组的详细信息。

返回

  • Promise<TabGroup|未定义>

    Chrome 90 及更高版本

    Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。

活动

onCreated

chrome.tabGroups.onCreated.addListener(
  callback: function,
)

创建组时触发。

参数

  • callback

    功能

    callback 参数如下所示:

    (group: TabGroup)=>void

onMoved

chrome.tabGroups.onMoved.addListener(
  callback: function,
)

在窗口内移动组时触发。系统仍会针对组内的单个标签页以及该组本身触发移动事件。在窗口之间移动组时,不会触发此事件,而是从一个窗口移除并在另一个窗口中创建该事件。

参数

  • callback

    功能

    callback 参数如下所示:

    (group: TabGroup)=>void

onRemoved

chrome.tabGroups.onRemoved.addListener(
  callback: function,
)

由用户直接关闭或因群组没有包含任何标签页而自动关闭时触发。

参数

  • callback

    功能

    callback 参数如下所示:

    (group: TabGroup)=>void

onUpdated

chrome.tabGroups.onUpdated.addListener(
  callback: function,
)

在更新组时触发。

参数

  • callback

    功能

    callback 参数如下所示:

    (group: TabGroup)=>void