吸管:open() 方法

可用性有限

此功能不是基线,因为它在一些使用最广泛的浏览器中无法使用。

安全上下文:此功能仅在安全上下文 (HTTPS) 中可用,在一些或所有支持的浏览器中。

实验性:这是一个实验性技术
在生产环境中使用此功能之前,请仔细查看浏览器兼容性表

EyeDropper.open() 方法启动吸管模式,返回一个 promise,当用户选择颜色并退出吸管模式时,promise 将被实现。

语法

js
open()
open(options)

参数

options 可选

一个 options 对象,用于传递一个AbortSignal 信号

signal 可选

一个AbortSignal。当AbortSignalabort() 方法被调用时,吸管模式将被中止。

返回值

一个Promise,最终在用户从屏幕上选择像素颜色时被实现。

promise 实现为一个包含以下属性的对象

sRGBHex

一个表示所选颜色的字符串,以十六进制 sRGB 格式 (#aabbcc) 表示。

异常

Promise 被拒绝时,不会抛出异常,而是返回异常。

NotAllowedError DOMException

如果open() 不是通过瞬态用户激活调用的,则抛出此异常。

InvalidStateError DOMException

如果另一个吸管已经打开,则抛出此异常。

AbortError DOMException

如果用户通过按下Esc 键中止选择,或者如果选择被传递给open() 作为参数的AbortController 中止,则抛出此异常。

OperationError DOMException

如果选择因其他原因失败,则抛出此异常。

规范

规范
吸管 API
# dom-eyedropper-open

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

另请参阅