こういうのの実行は基本 devtools のコンソールで行ってますし そこで制限があったら注意書きを書いてそうですけど特に書いてませんし
ついさっき Chrome 116 で使おうとしたらこんなエラーが出ました
DOMException: Failed to execute 'open' on 'EyeDropper': The user canceled the selection.
キャンセルはしてないのですけど
ウィンドウがアクティブじゃないからかもと予想して時間差で実行するようにして その間にウィンドウをアクティブにするようにしました
setTimeout(
() => new EyeDropper().open().then(console.log),
3000
)
その場限りの使い捨てですし 時間よりクリックの方が急いだり待ったりしなくていいかもしれません
window.onclick = () => new EyeDropper().open().then(console.log)
これだとカラーピッカーが表示されました
ウィンドウが非アクティブ時はカラーピッカーが表示されずキャンセル扱いになるみたいですね
この機能はブラウザ外部にも影響するものなので ブラウザ以外のところを操作中に急にカラーピッカーが表示されて混乱するようなことを避けるためでしょうか
仕方ないとはいえ コンソールから簡単にすぐ使えるメリットがなくなったのは残念です