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