[dhtmlXColorPickerライブラリ] プログラムでカラーピッカーを表示/制御する

説明

dhtmlXColorPickerライブラリでプログラムでカラーピッカーを表示/制御するにはカラーピッカーライブラリを読み込む前にwindow.dhx_globalImgPathにカラーピッカーの画像があるフォルダの基準パスを指定します。パスはHTMLファイルがあるところが基準になっています。
次にnew dhtmlXColorPicker()を使ってカラーピッカーオブジェクトを生成します。最初のパラメータにはカラーピッカーを表示するためのコンテナ(divタグのID名)を指定します。2番目のパラメータはfalseを設定します。trueを指定した場合はカラーピッカー上でマウスをドラッグした際にリアルタイムで色を示す数値が変化しなくなります。これは低速な環境での動作を配慮しているようです。3番目のパラメータはユーザーが保存した色を表示するかどうかでtrueで表示、falseで表示しないようになります。
次にinit()メソッドを使ってカラーピッカーを初期化します。あとは必要に応じて設定を行います。サンプルでは何度もカラーを選択できるようにするためhideOnSelect(false)として一回のクリックでカラーピッカーが消えないようにしています。
カラーが選択された場合に呼び出される関数をsetOnSelectHandler()に指定します。呼び出される関数にはカラー値を示すパラメータが3つ渡されます。最初が#rrggbb形式、2番目がRGB配列、3番目がHSL配列になります。あとは、カラーを反映させるなどの処理を行います。

サンプルプログラム

【HTML】
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Sample</title>
<link rel="stylesheet" href="css/dhtmlxcolorpicker.css" type="text/css" media="all">
<link rel="stylesheet" href="css/main.css" type="text/css" media="all">
<script type="text/javascript"><!--
window.dhx_globalImgPath="imgs/";
// --></script>
<script type="text/javascript" src="js/dhtmlxcommon.js"></script>
<script type="text/javascript" src="js/dhtmlxcolorpicker.js"></script>
<script type="text/javascript" src="js/sample.js"></script>
</head>
<body>
<h1>カラーピッカー</h1>
<div id="result">ここに選択した背景色が表示されます。</div>
<div id="myCol"></div>
</body>
</html>


【sample.js】
window.onload = function(){
var colorP = new dhtmlXColorPicker("myCol", false, true);
colorP.init();
colorP.hideOnSelect(false);
colorP.setOnSelectHandler(
function(col){
document.getElementById("result").style.backgroundColor = col;
}
);
}
サンプルを実行
[戻る]