browser.tabGroups

说明

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

权限

tabGroups

可用性

Chrome 89+ browser.*(自 Chrome 148 起) MV3+

类型

Color

分组的颜色。

枚举

"grey"

"blue"

"red"

"yellow"

"green"

"pink"

"purple"

"cyan"

"orange"

TabGroup

属性

  • 已收起

    布尔值

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

  • 颜色

    分组的颜色。

  • id

    数值

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

  • 共享

    布尔值

    Chrome 137 及更高版本 browser.*(自 Chrome 148 起)

    群组是否已共享。

  • title

    字符串 可选

    群组的标题。

  • windowId

    数值

    包含该组的窗口的 ID。

属性

TAB_GROUP_ID_NONE

表示没有群组的 ID。

值

-1

方法

get()

browser.tabGroups.get(
  groupId: number,
)
: Promise<TabGroup>

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

参数

  • groupId

    数值

返回

  • Promise<TabGroup>

    Chrome 90 及更高版本 browser.*(自 Chrome 148 起)

move()

browser.tabGroups.move(
  groupId: number,
  moveProperties: object,
)
: Promise<TabGroup | undefined>

在窗口内移动分组及其所有标签页,或将其移至新窗口。

参数

  • groupId

    数值

    要移动的群组的 ID。

  • moveProperties

    对象

    • 索引

      数值

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

    • windowId

      number 可选

      要将分组移至的窗口。默认为该分组当前所在的窗口。请注意,只能在 windows.WindowType 类型为 "normal" 的窗口之间移动分组。

返回

  • Promise<TabGroup | undefined>

    Chrome 90 及更高版本 browser.*(自 Chrome 148 起)

query()

browser.tabGroups.query(
  queryInfo: object,
)
: Promise<TabGroup[]>

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

参数

  • queryInfo

    对象

    • 已收起

      布尔值 (可选)

      群组是否已收起。

    • 颜色

      颜色 可选

      群组的颜色。

    • 共享

      布尔值 (可选)

      Chrome 137 及更高版本 browser.*(自 Chrome 148 起)

      群组是否已共享。

    • title

      字符串 可选

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

    • windowId

      number 可选

      父窗口的 ID,或windows.WINDOW_ID_CURRENT(表示当前窗口)。

返回

  • Promise<TabGroup[]>

    Chrome 90 及更高版本 browser.*(自 Chrome 148 起)

update()

browser.tabGroups.update(
  groupId: number,
  updateProperties: object,
)
: Promise<TabGroup | undefined>

修改群组的属性。未在 updateProperties 中指定的属性不会被修改。

参数

  • groupId

    数值

    要修改的群组的 ID。

  • updateProperties

    对象

    • 已收起

      布尔值 (可选)

      是否应收起该群组。

    • 颜色

      颜色 可选

      分组的颜色。

    • title

      字符串 可选

      群组的标题。

返回

  • Promise<TabGroup | undefined>

    Chrome 90 及更高版本 browser.*(自 Chrome 148 起)

事件

onCreated

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

在创建群组时触发。

参数

  • callback

    函数

    callback 参数如下所示:

    (group: TabGroup) => void

onMoved

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

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

参数

  • callback

    函数

    callback 参数如下所示:

    (group: TabGroup) => void

onRemoved

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

在标签页分组关闭时触发,无论是用户直接关闭,还是因为分组中不含任何标签页而自动关闭。

参数

  • callback

    函数

    callback 参数如下所示:

    (group: TabGroup) => void

onUpdated

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

在群组更新时触发。

参数

  • callback

    函数

    callback 参数如下所示:

    (group: TabGroup) => void