jQuery UI颜色select器

我听说jQuery UI包含了一个拾色器,但可以find一些关于它的文档。

它存在吗?

任何体面的文件如何实施它?

我发现这个: http : //docs.jquery.com/UI/Colorpicker

但是使用:

$("#colorpicker").colorpicker(); 

不行,用Firebug告诉我.colorpicker(); 不是一种方法!

它似乎工作正常,除非我把它放在一个对话界面,然后决定打破。

你可以在这里find一些演示和插件。

http://jqueryui.pbworks.com/ColorPicker

也许我很晚,但截至目前还有另一种方式使用jQuery UI 滑块 。

以下是它在jquery ui文档中显示的方式:

 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; } 
 <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"> <script src="//code.jquery.com/jquery-1.10.2.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <p class="ui-state-default ui-corner-all ui-helper-clearfix" style="padding:4px;"> <span class="ui-icon ui-icon-pencil" style="float:left; margin:-2px 5px 0 0;"></span> Simple Colorpicker </p> <div id="red"></div> <div id="green"></div> <div id="blue"></div> <div id="swatch" class="ui-widget-content ui-corner-all"></div> 

确保您的页面上包含jQuery UI基础和颜色select器小部件(以及jQuery 1.3的副本):

 <link rel="stylesheet" href="http://dev.jquery.com/view/tags/ui/latest/themes/flora/flora.all.css" type="text/css" media="screen" title="Flora (Default)"> <script type="text/javascript" src="http://dev.jquery.com/view/tags/ui/latest/ui/ui.core.js"></script> <script type="text/javascript" src="http://dev.jquery.com/view/tags/ui/latest/ui/ui.colorpicker.js"></script> 

如果你有这些,请尝试发布你的源代码,以便我们看到发生了什么。

在使用自动完成时,使用jQuery有同样的问题(不是方法)。 看来代码在autocomplete.js加载之前执行。 所以请确保在调用colorpicker之前加载了ui.colorpicker.js。

那是因为你正在试图在加载之前访问这个插件。 你应该尝试使用下面的方法来调用DOM:

 $(document).ready(function(){ $("#colorpicker").colorpicker(); }