chrome.tabGroups

说明

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

权限

tabGroups

可用性

Chrome 89 及更高版本 MV3

类型

Color

群组的颜色。

枚举

"灰色"

"蓝色"

"红色"

"黄色"

"绿色"

"粉"

"紫色"

“蓝绿色”

“橙色”

TabGroup

属性

  • 已收起

    布尔值

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

  • 颜色

    群组的颜色。

  • id

    number

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

  • 标题

    字符串(可选)

    群组的标题。

  • windowId

    number

    包含该组的窗口的 ID。

属性

TAB_GROUP_ID_NONE

表示群组不存在的 ID。

-1

方法

get()

<ph type="x-smartling-placeholder"></ph> 承诺
chrome.tabGroups.get(
  groupId: number,
  callback?: function,
)

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

参数

  • groupId

    number

  • callback

    函数(可选)

    callback 参数如下所示:

    (group: TabGroup) => void

返回

  • Promise<TabGroup>TabGroup

    Chrome 90 及更高版本

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

move()

<ph type="x-smartling-placeholder"></ph> 承诺
chrome.tabGroups.move(
  groupId: number,
  moveProperties: object,
  callback?: function,
)

将相应分组及其所有标签页移至其窗口中,或移至新窗口。

参数

  • groupId

    number

    要移动的群组的 ID。

  • moveProperties

    对象

    • 索引

      number

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

    • windowId

      编号(选填

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

  • callback

    函数(可选)

    callback 参数如下所示:

    (group?: TabGroup) => void

    • 群组

      TabGroup 可选

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

返回

  • Promise<TabGroupTabGroup |未定义>

    Chrome 90 及更高版本

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

query()

<ph type="x-smartling-placeholder"></ph> 承诺
chrome.tabGroups.query(
  queryInfo: object,
  callback?: function,
)

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

参数

  • queryInfo

    对象

    • 已收起

      布尔值(可选)

      群组是否处于收起状态。

    • 颜色

      颜色(可选)

      组的颜色。

    • 标题

      字符串(可选)

      根据格式匹配群组标题。

    • windowId

      编号(选填

      父窗口的 ID,或当前窗口windows.WINDOW_ID_CURRENT

  • callback

    函数(可选)

    callback 参数如下所示:

    (result: TabGroup[]) => void

返回

  • Promise<TabGroup[]>TabGroup

    Chrome 90 及更高版本

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

update()

<ph type="x-smartling-placeholder"></ph> 承诺
chrome.tabGroups.update(
  groupId: number,
  updateProperties: object,
  callback?: function,
)

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

参数

  • groupId

    number

    要修改的群组的 ID。

  • updateProperties

    对象

    • 已收起

      布尔值(可选)

      组是否应收起。

    • 颜色

      颜色(可选)

      组的颜色。

    • 标题

      字符串(可选)

      群组的标题。

  • callback

    函数(可选)

    callback 参数如下所示:

    (group?: TabGroup) => void

    • 群组

      TabGroup 可选

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

返回

  • Promise<TabGroupTabGroup |未定义>

    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