2017-02-18 8 views
2

私は、ユーザーが<input type="color">から色を選択したときに、ページ上で何かを行うためにjavascriptを使用するWebアプリケーションに取り組んでいます。同じ<input type = "color">値をブラウザ間で変更するにはどうすればよいですか?

問題は<input type="color">はクロム、Firefox、およびSafariで異なる動作をしますということです。

のSafari上
  • 、ユーザーが<input type="color">クリックし、は、外部のColorPickerウィンドウが Firefoxの上
  • をポップアップしていません、外部のカラーピッカーコントロールウィンドウがポップアップしますが、値の変更が発生したときにのみinput要素の値が変更されます.2)その後、カラーピッカーウィンドウが閉じられると(EDIT ... Macの場合、ユーザーはclする必要があります値の変更を確認するには、「OK」ボタンICK、単にウィンドウを閉じない)

Chromeの動作が理想的である:クリックしたとき

  • <input type="color">は、任意のウィンドウ
  • をポップアップ表示するColorPickerを提供値がカラーピッカー内で変更された時は、(前のColorPickerウィンドウが閉じられている)
input要素の値が変化するウィンドウをポップアップ

Here is a codepen with a vanilla <input type="color">この3つのブラウザすべてでこの問題が確認されています。

FirefoxとSafariのChromeの動作が<input type="color">になるようにjavascriptやcssを使用するにはどうすればよいですか?

EDIT color入力タイプがある サファリ夢中ものであり、their docs say

RGBカラー値を指定するための入力制御。ユーザーはカラーウェルから色を選択できます

+1

で色要素のサポートを見ることができます。これを行うのに利用できるプラグインはたくさんあります。 –

答えて

1

私たちはまだ開発中にこの入力タイプを使用していないのでしょうか?あなたの最善の解決策は、クロスブラウザプラグインを使用することです。

あなたはあなたがあなた自身の交換用カラーピッカーを作成したり、あらかじめ用意されたプラグインを使用するかだろうhttp://caniuse.com/#search=color

関連する問題