EyeDropper API 浏览器支持
发布于
EyeDropper API 调起浏览器内置的取色器,让自定义颜色选择器可以拾取屏幕上任意像素,并以 sRGBHex 字符串读回。
下表覆盖顶层 EyeDropper 接口(MDN browser-compat-data 中的 api.EyeDropper)。ChromeOS 的版本下限与 Linux Wayland 的限制写在对应行的脚注里。
- 图例
- 支持
- 部分支持
- 需开启标志
- 不支持
- 未知
| 浏览器 / 平台 | 支持 | 版本 | 置信度 | 来源 | 备注 |
|---|---|---|---|---|---|
| Chrome (Desktop) | 支持 | 95 | 高 | 来源 | 12 |
| Chrome (Android) | 不支持 | — | 高 | 来源 | 3 |
| Edge (Desktop) | 支持 | 95 | 高 | 来源 | 456 |
| Firefox (Desktop) | 不支持 | — | 高 | 来源 | 7 |
| Firefox (Android) | 不支持 | — | 高 | 来源 | 89 |
| Safari (macOS) | 不支持 | — | 高 | 来源 | 10 |
| Safari (iOS) | 不支持 | — | 高 | 来源 | 1112 |
| Samsung Internet | 不支持 | — | 高 | 来源 | 1314 |
| WebView (Android) | 不支持 | — | 高 | 来源 | 15 |
- Chrome 120 之前,EyeDropper API 在 ChromeOS 上不可用。见 bug 40720753(https://crbug.com/40720753)。
- 在 Linux X11 上可用,在 Linux Wayland 上不可用。见 bug 40720753(https://crbug.com/40720753)。
- browser-compat-data 未记录 Chrome Android 的支持。
- Chrome 120 之前,EyeDropper API 在 ChromeOS 上不可用。见 bug 40720753(https://crbug.com/40720753)。
- 在 Linux X11 上可用,在 Linux Wayland 上不可用。见 bug 40720753(https://crbug.com/40720753)。
- 由 browser-compat-data 镜像自 Chrome 的数据推导。
- browser-compat-data 未记录 Firefox 的支持。
- browser-compat-data 未记录 Firefox for Android 的支持。
- 由 browser-compat-data 镜像自 Firefox 的数据推导。
- browser-compat-data 未记录 Safari 的支持。
- browser-compat-data 未记录 iOS 版 Safari 的支持。
- 由 browser-compat-data 镜像自 Safari 的数据推导。
- browser-compat-data 未记录 Samsung Internet 的支持。
- 由 browser-compat-data 镜像自 Chrome Android 的数据推导。
- 实现跟踪:https://crbug.com/40791573。
调用条件与错误
Section titled “调用条件与错误”open() 只能在用户操作(例如按钮点击)的响应中调用(Chrome for Developers)。返回的 promise 在用户按下 Escape 或 AbortSignal 中止选择时以 AbortError 拒绝;缺少瞬时用户激活时以 NotAllowedError 拒绝;已有另一个取色器打开时以 InvalidStateError 拒绝;选择因其他原因失败时以 OperationError 拒绝(MDN,EyeDropper.open())。
- EyeDropper API:拾取屏幕上任意像素的颜色
- EyeDropper API(wicg.github.io)
- EyeDropper: open() method(developer.mozilla.org)
- The EyeDropper API(developer.chrome.com)