chrome.extensionTypes

refresh date: 2026-09-25 robots: noindex

说明

chrome.extensionTypes API 包含 Chrome 扩展程序的类型声明。

类型

ColorArray

Chrome 139 及更高版本

类型

[number, number, number, number]

CSSOrigin

Chrome 66 及更高版本

注入的 CSS 的来源。

枚举

"author"

"user"

DeleteInjectionDetails

Chrome 87 及更高版本

要移除的 CSS 的详细信息。必须设置代码或文件属性,但不能同时设置这两者。

属性

  • allFrames

    布尔值 (可选)

    如果 allFrames 为 true,则表示应从当前页面的所有框架中移除 CSS。默认值为 false,并且仅从顶部帧中移除。如果设置了 true 和 frameId,则从所选帧及其所有子帧中移除代码。

  • 代码

    字符串 可选

    要移除的 CSS 代码。

  • cssOrigin

    CSSOrigin 可选

    要移除的 CSS 的来源。默认设置为 "author"。

  • 文件

    字符串 可选

    要移除的 CSS 文件。

  • frameId

    number 可选

    应移除 CSS 的框架。默认值为 0(顶级框架)。

  • matchAboutBlank

    布尔值 (可选)

    如果 matchAboutBlank 为 true,则当扩展程序有权访问父文档时,该代码也会从 about:blank 和 about:srcdoc 框架中移除。默认值为 false。

DocumentLifecycle

Chrome 106 及更高版本

框架的文档生命周期。

枚举

"prerender"

"active"

“已缓存”

"pending_deletion"

ExecutionWorld

Chrome 111 及更高版本

脚本要执行的 JavaScript 世界。可以是此扩展程序独有的隔离世界、与网页的 JavaScript 共享的 DOM 主世界,也可以是仅适用于通过 User Scripts API 注册的脚本的用户脚本世界。

枚举

"ISOLATED"

"MAIN"

"USER_SCRIPT"

FrameType

Chrome 106 及更高版本

帧的类型。

枚举

"outermost_frame"

"fenced_frame"

"sub_frame"

ImageDataType

Chrome 139 及更高版本

图片的像素数据。必须是 ImageData 对象;例如,来自 canvas 元素。

类型

ImageData

ImageDetails

有关图片格式、质量和面积的详细信息。

属性

  • 格式

    ImageFormat 可选

    生成图片的格式。默认值为 "jpeg"。

  • 质量

    number 可选

    当格式为 "jpeg" 时,控制生成图片的质量。对于 PNG 图片,系统会忽略此值。随着质量的降低,生成的图片将包含更多视觉伪影,并且存储所需的字节数也会减少。

ImageFormat

Chrome 44 及更高版本

图片的格式。

枚举

"jpeg"

"png"

InjectDetails

要注入的脚本或 CSS 的详细信息。必须设置代码或文件属性,但不能同时设置这两者。

属性

  • allFrames

    布尔值 (可选)

    如果 allFrames 为 true,则表示 JavaScript 或 CSS 应注入到当前页面的所有框架中。默认值为 false,并且仅注入到顶部框架中。如果设置了 true 和 frameId,则代码会插入到所选框架及其所有子框架中。

  • 代码

    字符串 可选

    要注入的 JavaScript 或 CSS 代码。

    警告:请谨慎使用 code 参数。如果使用不当,您的扩展程序可能会受到跨站脚本攻击

  • cssOrigin

    CSSOrigin 可选

    Chrome 66 及更高版本

    要注入的 CSS 的来源。此属性只能针对 CSS 指定,不能针对 JavaScript 指定。默认设置为 "author"。

  • 文件

    字符串 可选

    要注入的 JavaScript 或 CSS 文件。

  • frameId

    number 可选

    Chrome 50 及更高版本

    应注入脚本或 CSS 的框架。默认值为 0(顶级框架)。

  • matchAboutBlank

    布尔值 (可选)

    如果 matchAboutBlank 为 true,那么如果扩展程序有权访问 about:blank 和 about:srcdoc 框架的父文档,则代码也会注入到这些框架中。代码无法插入到顶级 about:-frame 中。默认值为 false。

  • runAt

    RunAt(运行时间)可选

    JavaScript 或 CSS 将注入到标签页中的最早时间。默认为“document_idle”。

RunAt

Chrome 44 及更高版本

JavaScript 或 CSS 将注入到标签页中的最早时间。

枚举

“document_start”
脚本在任何 CSS 文件之后注入,但在构建任何其他 DOM 或运行任何其他脚本之前注入。

“document_end”
在 DOM 完成后立即注入脚本,但在图片和框架等子资源加载之前注入。

“document_idle”
浏览器会选择一个时间来注入脚本,该时间介于“document_end”和 window.onload 事件触发后立即执行之间。注入的确切时间取决于文档的复杂程度和加载时间,并针对网页加载速度进行了优化。以“document_idle”运行的内容脚本无需监听 window.onload 事件;它们保证在 DOM 完成后运行。如果某个脚本确实需要在 window.onload 之后运行,扩展程序可以使用 document.readyState 属性检查 onload 是否已触发。