EyeDropper: open() 方法

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

EyeDropper.open() 方法會啟動取色器模式,並返回一個 Promise。一旦使用者選擇了顏色並退出了取色器模式,該 Promise 就會被 fulfilled。

語法

js
open()
open(options)

引數

options 可選

一個用於傳遞 AbortSignal 訊號的 options 物件

signal 可選

一個 AbortSignal。當呼叫 AbortSignalabort() 方法時,取色器模式將被中止。

返回值

一個 Promise,當用戶從螢幕上選擇一個畫素顏色後,該 Promise 最終會 resolve。

該 Promise resolve 為一個具有以下屬性的物件

sRGBHex

一個字串,表示所選顏色的十六進位制 sRGB 格式(#aabbcc)。

異常

異常不會被丟擲,而是當 Promise 被 reject 時返回。

NotAllowedError DOMException

如果 open() 不是透過 使用者瞬時啟用 呼叫,則會丟擲此異常。

InvalidStateError DOMException

如果另一個取色器已經開啟,則會丟擲此異常。

AbortError DOMException

如果使用者透過按 Esc 鍵中止選擇,或者作為引數傳遞給 open()AbortController 中止了選擇,則會丟擲此異常。

OperationError DOMException

如果由於其他原因導致選擇失敗,則會丟擲此異常。

規範

規範
EyeDropper API
# dom-eyedropper-open

瀏覽器相容性

另見