我听说jQuery UI包含一个拾色器,但可以找到很少的文档.
它存在吗?
关于如何实施它的任何体面的文件?
我发现了这个:http://docs.jquery.com/UI/Colorpicker
但使用:
$("#colorpicker").colorpicker();
不起作用,Firebug告诉我.colorpicker();
不是一种方法!
它似乎工作正常,除非我把它放在一个对话用户界面,然后决定打破.
你可以在这里找到一些演示和插件.
http://jqueryui.pbworks.com/ColorPicker
也许我已经很晚了,但到目前为止还有另一种使用jquery ui 滑块的方法.
以下是它在jquery ui docs中的显示方式:
function hexFromRGB(r, g, b) {
var hex = [
r.toString( 16 ),
g.toString( 16 ),
b.toString( 16 )
];
$.each( hex, function( nr, val ) {
if ( val.length === 1 ) {
hex[ nr ] = "0" + val;
}
});
return hex.join( "" ).toUpperCase();
}
function refreshSwatch() {
var red = $( "#red" ).slider( "value" ),
green = $( "#green" ).slider( "value" ),
blue = $( "#blue" ).slider( "value" ),
hex = hexFromRGB( red, green, blue );
$( "#swatch" ).css( "background-color", "#" + hex );
}
$(function() {
$( "#red, #green, #blue" ).slider({
orientation: "horizontal",
range: "min",
max: 255,
value: 127,
slide: refreshSwatch,
change: refreshSwatch
});
$( "#red" ).slider( "value", 255 );
$( "#green" ).slider( "value", 140 );
$( "#blue" ).slider( "value", 60 );
});
#red, #green, #blue {
float: left;
clear: left;
width: 300px;
margin: 15px;
}
#swatch {
width: 120px;
height: 100px;
margin-top: 18px;
margin-left: 350px;
background-image: none;
}
#red .ui-slider-range { background: #ef2929; }
#red .ui-slider-handle { border-color: #ef2929; }
#green .ui-slider-range { background: #8ae234; }
#green .ui-slider-handle { border-color: #8ae234; }
#blue .ui-slider-range { background: #729fcf; }
#blue .ui-slider-handle { border-color: #729fcf; }
Simple Colorpicker