From 2e20c96ee7e4d75157a7f380bb27f4c00ceba601 Mon Sep 17 00:00:00 2001 From: peterd Date: Wed, 4 Feb 2015 14:31:24 +0100 Subject: [PATCH] added support for triggering nested elements (Nested) elements besides input fields can now also be used for triggering the colorPicker --- index.css | 37 +++++++++++++++++++++++++++++++++++++ index.html | 23 ++++++++++++++++++----- jqColorPicker.js | 26 ++++++++++++++++++-------- jqColorPicker.js.map | 2 +- jqColorPicker.min.js | 4 ++-- 5 files changed, 76 insertions(+), 16 deletions(-) diff --git a/index.css b/index.css index bfce9d1..155d5d3 100644 --- a/index.css +++ b/index.css @@ -26,4 +26,41 @@ pre { border: 1px solid #aaa; border-radius: 3px; width: 140px; +} +.div-toggles { + margin-top: 1em; +} +.div-toggles .color { + position: relative; + display: inline-block; + width: 40px; + padding: 5px; + height: 25px; + border: 1px solid #666; + border-radius: 2px; + background: #eee; +} +.div-toggles .color:after { + content: ""; + display: block; + position: absolute; + top: 50%; + right: 5px; + margin-top: -2px; + border: 5px solid; + border-color: #000 transparent transparent; +} +.div-toggles .active:after { + margin-top: -8px; + border-color: transparent transparent #000; +} +.div-toggles .color div { + display: inline-block; + width: 23px; + height: 23px; + background: #fff url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEXMzMwAAADTMzNkAAAAAnRSTlP/AOW3MEoAAAARSURBVAjXY2D+wICG/jCgIQDPPwub2NOsgwAAAABJRU5ErkJggg=='); +} +.div-toggles .color div div { + border: 1px solid #666; + background: #aaa; } \ No newline at end of file diff --git a/index.html b/index.html index 257ce09..4d42ec5 100644 --- a/index.html +++ b/index.html @@ -14,7 +14,7 @@ This 4.4KB small HSB color picker is based on a subset of colors.js from it's big brother colorPicker, supports all modern features like touch and MS pointer, GPU accelerated rendering, battery friendly requestAnimationFrame and provides a lot of hooks for developers to write plugins (See demo plugins below in Demo).

Demo

-On all inputs with className 'color':
$('input.color').colorPicker();
+On all elements with className 'color':
$('.color').colorPicker();

Switch between plugins: (see index.html for more details...)

-

+

-

+
+
+
+
+
+

Features

Tiny jQuery colorPicker only loads if triggered to show. It uses battery saving technologies and super fast rendering for best performance on desktop and mobile browsers.
This colorPicker is very flexible to modify and customize and there is an easy way to write plugins to extend functionality, look and feel...
@@ -96,6 +101,7 @@ window.myColorPicker = $('input.color').colorPicker({ plugin.mobile = { customBG: '#222', margin: '4px -2px', + doRender: 'div div', // demo on how to make plugins... mobile support plugin buidCallback: function($elm) { @@ -126,6 +132,7 @@ window.myColorPicker = $('input.color').colorPicker({ plugin.input = { customBG: '#222', margin: '4px -2px', + doRender: 'div div', buidCallback: function($elm) { var colorInstance = this.color, @@ -184,6 +191,7 @@ window.myColorPicker = $('input.color').colorPicker({ plugin.memory = { customBG: '#222', margin: '4px -2px', + doRender: 'div div', opacity: false, buidCallback: function($elm) { @@ -224,13 +232,15 @@ window.myColorPicker = $('input.color').colorPicker({ // the default; no extra stuff plugin.desktop = { customBG: '#222', - margin: '4px -2px' + margin: '4px -2px', + doRender: 'div div' }; // the default without alpha chanel though plugin.noalpha = { customBG: '#222', margin: '4px -2px', + doRender: 'div div', opacity: false }; @@ -238,6 +248,7 @@ window.myColorPicker = $('input.color').colorPicker({ plugin.small = { customBG: '#222', margin: '4px -2px', + doRender: 'div div', cssAddon: // could also be in a css file instead '.cp-color-picker{padding:5px 5px 0;}' + '.cp-xy-slider{width:100px; height:100px; margin-bottom:3px;}' + @@ -250,6 +261,7 @@ window.myColorPicker = $('input.color').colorPicker({ plugin.skinned = { customBG: '#222', margin: '5px -2px', + doRender: 'div div', cssAddon: // could also be in a css file instead '.cp-color-picker{border:1px solid #999; padding:10px;' + 'background:#eee; overflow:visible; border-radius:3px;}' + @@ -276,6 +288,7 @@ window.myColorPicker = $('input.color').colorPicker({ plugin.dev_skinned = { customBG: '#222', margin: '5px -2px', + doRender: 'div div', buidCallback: function($elm) { $elm.append('

'); @@ -331,7 +344,7 @@ window.myColorPicker = $('input.color').colorPicker({ window.location = './?type=' + this.value + '#demo' }); - window.myColorPicker = $('input.color').colorPicker( + window.myColorPicker = $('.color').colorPicker( plugin[type] || plugin.desktop ); })(window); diff --git a/jqColorPicker.js b/jqColorPicker.js index 6e878cc..54b1eb2 100644 --- a/jqColorPicker.js +++ b/jqColorPicker.js @@ -46,7 +46,8 @@ ColorPicker.prototype.toggle = toggle; function extractValue(elm) { - return elm.value || $(elm).css('background-color') || '#fff'; + return elm.value || elm.getAttribute('value') || + $(elm).css('background-color') || '#fff'; } function resolveEventType(event) { @@ -54,13 +55,17 @@ event.originalEvent.touches[0] : event; } + function findElement($elm) { + return $($elm.find(_options.doRender)[0] || $elm[0]); + } + function toggle(event) { var $this = $(this), position; if (event) { position = $this.offset(); - _cache.$element = $this; + _cache.$element = findElement($this); _options.preventFocus && event.preventDefault(); (_$UI || build()).css({ @@ -69,12 +74,13 @@ }).show(_options.animationSpeed, function() { _cache.alphaWidth = $('.cp-alpha', _$UI).width(); _cache.sliderWidth = $('.cp-xy-slider', _$UI).width(); - _color.setColor(extractValue($this[0])); - _animate(function(){render(true)}); + _color.setColor(extractValue(_cache.$element[0])); + render(true); }); } else { $(_$UI).hide(_options.animationSpeed, function() { _cache.$element.blur(); + render(false); }); } }; @@ -248,12 +254,15 @@ _colorPicker = new ColorPicker(options); $document.on('touchstart mousedown pointerdown', function(e) { - if ($.inArray(e.target, $that) === -1 && - !$(e.target).closest(_$UI).length) { + var $target = $(e.target); + + if ($.inArray($target.closest($that.selector)[0], + $that) === -1 && + !$target.closest(_$UI).length) { toggle(); } }). - on('focus', this.selector, toggle). + on('focus click', this.selector, toggle). on('change', this.selector, function() { _color.setColor(this.value); $that.colorPicker.render(); @@ -267,7 +276,8 @@ mode = value.split('('); // save initial color mode and set color and bgColor $(this).data('colorMode', mode[1] ? mode[0].substr(0, 3) : 'HEX'); - options.doRender && $(this).css({'background-color': value, + options.doRender && findElement($(this)). + css({'background-color': value, 'color': function() { return _color.setColor(value). rgbaMixBGMixCustom.luminance > 0.22 ? '#222' : '#ddd' diff --git a/jqColorPicker.js.map b/jqColorPicker.js.map index 64271b3..d5bbad2 100644 --- a/jqColorPicker.js.map +++ b/jqColorPicker.js.map @@ -1 +1 @@ -{"version":3,"file":"jqColorPicker.min.js","sources":["colors.js","jqColorPicker.js"],"names":["window","undefined","setColor","colors","color","type","save","alpha","ColorConverter","txt2color","_colors","n","limitValue","_valueRanges","convertColors","saveAsBackground","RGB","rgb","grey","_instance","options","r","g","b","equivalentGrey","Math","round","rgbaMixBlack","mixColors","rgbaMixWhite","luminance","getLuminance","customBG","rgbaMixCustom","colorObj","modes","SAVE","SMART","convert","ranges","RND","mode","from","exceptions","hsl","typ","HEX","RGB2HEX","webSave","getClosestWebColor","webSmart","saveColor","hueRGB","hue2RGB","hsv","h","background","rgbaMixBGMixCustom","WCAG2Ratio","getWCAG2Ratio","luminanceDelta","abs","hueDelta","getHueDelta","RGBLuminance","HUELuminance","convertCallback","val","out","tmp","half","rgb1","rgb2","nominal","max","normalized","div","i","length","pow","topColor","bottomColor","topAlpha","bottomAlpha","newColor","alphaTop","alphaBottom","a","lum1","lum2","ratio","value","min","s","v","l","Colors","this","valueRanges","initInstance","THIS","_options","focusInstance","option","prototype","newCol","setCustomBackground","col","txt","parts","replace","split","values","substr","m","charAt","HEX2rgb","toString","toUpperCase","parseInt","hue","mod","rgb2hsv","chroma","k","hsv2rgb","f","p","q","t","hsv2hsl","rgb2hsl","dependent","hsl2rgb","sv","sextant","fract","vsf","$","extractValue","elm","css","resolveEventType","event","originalEvent","touches","toggle","position","$this","offset","_cache","$element","preventFocus","preventDefault","_$UI","build","left","top","outerHeight","show","animationSpeed","alphaWidth","width","sliderWidth","_color","_animate","render","hide","blur","append","_css","cssAddon","_html","margin","find","opacity","parent","_GPU","GPU","buidCallback","call","_colorPicker","_$xy_slider","_$xy_cursor","_$z_cursor","_$alpha","_$alpha_cursor","on","pointerdown","appendTo","document","body","e","action","className","elementOrigin","xy_slider","z_slider","$document","_pointerup","pointerup","_pointermove","off","x","pageX","y","pageY","z","toggled","HSL","dark","light","colorMode","data","isAlpha","RGBInnerText","RGBAText","text","HUEContrast","alphaContrast","t3d","backgroundColor","transform","borderColor","doRender","renderCallback","requestAnimationFrame","webkitRequestAnimationFrame","cb","ColorPicker","fn","colorPicker","$that","noop","extend","inArray","target","closest","selector","each","background-color","jQuery"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"jqColorPicker.min.js","sources":["colors.js","jqColorPicker.js"],"names":["window","undefined","setColor","colors","color","type","save","alpha","ColorConverter","txt2color","_colors","n","limitValue","_valueRanges","convertColors","saveAsBackground","RGB","rgb","grey","_instance","options","r","g","b","equivalentGrey","Math","round","rgbaMixBlack","mixColors","rgbaMixWhite","luminance","getLuminance","customBG","rgbaMixCustom","colorObj","modes","SAVE","SMART","convert","ranges","RND","mode","from","exceptions","hsl","typ","HEX","RGB2HEX","webSave","getClosestWebColor","webSmart","saveColor","hueRGB","hue2RGB","hsv","h","background","rgbaMixBGMixCustom","WCAG2Ratio","getWCAG2Ratio","luminanceDelta","abs","hueDelta","getHueDelta","RGBLuminance","HUELuminance","convertCallback","val","out","tmp","half","rgb1","rgb2","nominal","max","normalized","div","i","length","pow","topColor","bottomColor","topAlpha","bottomAlpha","newColor","alphaTop","alphaBottom","a","lum1","lum2","ratio","value","min","s","v","l","Colors","this","valueRanges","initInstance","THIS","_options","focusInstance","option","prototype","newCol","setCustomBackground","col","txt","parts","replace","split","values","substr","m","charAt","HEX2rgb","toString","toUpperCase","parseInt","hue","mod","rgb2hsv","chroma","k","hsv2rgb","f","p","q","t","hsv2hsl","rgb2hsl","dependent","hsl2rgb","sv","sextant","fract","vsf","$","extractValue","elm","getAttribute","css","resolveEventType","event","originalEvent","touches","findElement","$elm","find","doRender","toggle","position","$this","offset","_cache","$element","preventFocus","preventDefault","_$UI","build","left","top","outerHeight","show","animationSpeed","alphaWidth","width","sliderWidth","_color","render","hide","blur","append","_css","cssAddon","_html","margin","opacity","parent","_GPU","GPU","buidCallback","call","_colorPicker","_$xy_slider","_$xy_cursor","_$z_cursor","_$alpha","_$alpha_cursor","on","pointerdown","appendTo","document","body","e","action","className","elementOrigin","xy_slider","z_slider","$document","_pointerup","pointerup","_pointermove","off","x","pageX","y","pageY","_animate","z","toggled","HSL","dark","light","colorMode","data","isAlpha","RGBInnerText","RGBAText","text","HUEContrast","alphaContrast","t3d","backgroundColor","transform","borderColor","renderCallback","requestAnimationFrame","webkitRequestAnimationFrame","cb","ColorPicker","fn","colorPicker","$that","noop","extend","$target","target","inArray","closest","selector","each","background-color","jQuery"],"mappings":"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"} \ No newline at end of file diff --git a/jqColorPicker.min.js b/jqColorPicker.min.js index 36721ef..e6d33c2 100644 --- a/jqColorPicker.min.js +++ b/jqColorPicker.min.js @@ -1,4 +1,4 @@ -/*! tiny colorPicker - v1.0.0 2015-02-03 */ +/*! tiny colorPicker - v1.0.0 2015-02-04 */ !function(a,b){"use strict";function c(a,c,d,f,g){if("string"==typeof c){var c=t.txt2color(c);d=c.type,n[d]=c[d],g=g!==b?g:c.alpha}else if(c)for(var h in c)a[d][h]=k(c[h]/l[d][h][1],0,1);return g!==b&&(a.alpha=+g),e(d,f?a:b)}function d(a,b,c){var d=m.options.grey,e={};return e.RGB={r:a.r,g:a.g,b:a.b},e.rgb={r:b.r,g:b.g,b:b.b},e.alpha=c,e.equivalentGrey=Math.round(d.r*a.r+d.g*a.g+d.b*a.b),e.rgbaMixBlack=i(b,{r:0,g:0,b:0},c,1),e.rgbaMixWhite=i(b,{r:1,g:1,b:1},c,1),e.rgbaMixBlack.luminance=h(e.rgbaMixBlack,!0),e.rgbaMixWhite.luminance=h(e.rgbaMixWhite,!0),m.options.customBG&&(e.rgbaMixCustom=i(b,m.options.customBG,c,1),e.rgbaMixCustom.luminance=h(e.rgbaMixCustom,!0),m.options.customBG.luminance=h(m.options.customBG,!0)),e}function e(a,b){var c,e,k,o=b||n,p=t,q=m.options,r=l,s=o.RND,u="",v="",w={hsl:"hsv",rgb:a},x=s.rgb;if("alpha"!==a){for(var y in r)if(!r[y][y]){a!==y&&(v=w[y]||"rgb",o[y]=p[v+"2"+y](o[v])),s[y]||(s[y]={}),c=o[y];for(u in c)s[y][u]=Math.round(c[u]*r[y][u][1])}x=s.rgb,o.HEX=p.RGB2HEX(x),o.equivalentGrey=q.grey.r*o.rgb.r+q.grey.g*o.rgb.g+q.grey.b*o.rgb.b,o.webSave=e=f(x,51),o.webSmart=k=f(x,17),o.saveColor=x.r===e.r&&x.g===e.g&&x.b===e.b?"web save":x.r===k.r&&x.g===k.g&&x.b===k.b?"web smart":"",o.hueRGB=t.hue2RGB(o.hsv.h),b&&(o.background=d(x,o.rgb,o.alpha))}var z,A,B,C=o.rgb,D=o.alpha,E="luminance",F=o.background;return z=i(C,{r:0,g:0,b:0},D,1),z[E]=h(z,!0),o.rgbaMixBlack=z,A=i(C,{r:1,g:1,b:1},D,1),A[E]=h(A,!0),o.rgbaMixWhite=A,q.customBG&&(B=i(C,F.rgbaMixCustom,D,1),B[E]=h(B,!0),B.WCAG2Ratio=j(B[E],F.rgbaMixCustom[E]),o.rgbaMixBGMixCustom=B,B.luminanceDelta=Math.abs(B[E]-F.rgbaMixCustom[E]),B.hueDelta=g(F.rgbaMixCustom,B,!0)),o.RGBLuminance=h(x),o.HUELuminance=h(o.hueRGB),q.convertCallback&&q.convertCallback(o,a),o}function f(a,b){var c={},d=0,e=b/2;for(var f in a)d=a[f]%b,c[f]=a[f]+(d>e?b-d:-d);return c}function g(a,b,c){return(Math.max(a.r-b.r,b.r-a.r)+Math.max(a.g-b.g,b.g-a.g)+Math.max(a.b-b.b,b.b-a.b))*(c?255:1)/765}function h(a,b){for(var c=b?1:255,d=[a.r/c,a.g/c,a.b/c],e=m.options.luminance,f=d.length;f--;)d[f]=d[f]<=.03928?d[f]/12.92:Math.pow((d[f]+.055)/1.055,2.4);return e.r*d[0]+e.g*d[1]+e.b*d[2]}function i(a,c,d,e){var f={},g=d!==b?d:1,h=e!==b?e:1,i=g+h*(1-g);for(var j in a)f[j]=(a[j]*g+c[j]*h*(1-g))/i;return f.a=i,f}function j(a,b){var c=1;return c=a>=b?(a+.05)/(b+.05):(b+.05)/(a+.05),Math.round(100*c)/100}function k(a,b,c){return a>c?c:b>a?b:a}var l={rgb:{r:[0,255],g:[0,255],b:[0,255]},hsv:{h:[0,360],s:[0,100],v:[0,100]},hsl:{h:[0,360],s:[0,100],l:[0,100]},alpha:{alpha:[0,1]},HEX:{HEX:[0,16777215]}},m={},n={},o={r:.298954,g:.586434,b:.114612},p={r:.2126,g:.7152,b:.0722},q=a.Colors=function(a){this.colors={RND:{}},this.options={color:"rgba(204, 82, 37, 0.8)",grey:o,luminance:p,valueRanges:l},r(this,a||{})},r=function(a,d){var e,f=a.options;s(a);for(var g in d)d[g]!==b&&(f[g]=d[g]);e=f.customBG,f.customBG="string"==typeof e?t.txt2color(e).rgb:e,n=c(a.colors,f.color,b,!0)},s=function(a){m!==a&&(m=a,n=a.colors)};q.prototype.setColor=function(a,d,f){return s(this),a?c(this.colors,a,d,b,f):(f!==b&&(this.colors.alpha=f),e(d))},q.prototype.setCustomBackground=function(a){return s(this),this.options.customBG="string"==typeof a?t.txt2color(a).rgb:a,c(this.colors,b,"rgb")},q.prototype.saveAsBackground=function(){return s(this),c(this.colors,b,"rgb",!0)};var t={txt2color:function(a){var b={},c=a.replace(/(?:#|\)|%)/g,"").split("("),d=(c[1]||"").split(/,\s*/),e=c[1]?c[0].substr(0,3):"rgb",f="";if(b.type=e,b[e]={},c[1])for(var g=3;g--;)f=e[g]||e.charAt(g),b[e][f]=+d[g]/l[e][f][1];else b.rgb=t.HEX2rgb(c[0]);return b.alpha=d[3]?+d[3]:1,b},RGB2HEX:function(a){return((a.r<16?"0":"")+a.r.toString(16)+(a.g<16?"0":"")+a.g.toString(16)+(a.b<16?"0":"")+a.b.toString(16)).toUpperCase()},HEX2rgb:function(a){return a=a.split(""),{r:parseInt(a[0]+a[a[3]?1:0],16)/255,g:parseInt(a[a[3]?2:1]+(a[3]||a[1]),16)/255,b:parseInt((a[4]||a[2])+(a[5]||a[2]),16)/255}},hue2RGB:function(a){var b=6*a,c=~~b%6,d=6===b?0:b-c;return{r:Math.round(255*[1,1-d,0,0,d,1][c]),g:Math.round(255*[d,1,1,1-d,0,0][c]),b:Math.round(255*[0,0,d,1,1,1-d][c])}},rgb2hsv:function(a){var b,c,d,e=a.r,f=a.g,g=a.b,h=0;return g>f&&(f=g+(g=f,0),h=-1),c=g,f>e&&(e=f+(f=e,0),h=-2/6-h,c=Math.min(f,g)),b=e-c,d=e?b/e:0,{h:1e-15>d?n&&n.hsl&&n.hsl.h||0:b?Math.abs(h+(f-g)/(6*b)):0,s:e?b/e:n&&n.hsv&&n.hsv.s||0,v:e}},hsv2rgb:function(a){var b=6*a.h,c=a.s,d=a.v,e=~~b,f=b-e,g=d*(1-c),h=d*(1-f*c),i=d*(1-(1-f)*c),j=e%6;return{r:[d,h,g,g,i,d][j],g:[i,d,d,h,g,g][j],b:[g,g,i,d,d,h][j]}},hsv2hsl:function(a){var b=(2-a.s)*a.v,c=a.s*a.v;return c=a.s?1>b?b?c/b:0:c/(2-b):0,{h:a.h,s:a.v||c?c:n&&n.hsl&&n.hsl.s||0,l:b/2}},rgb2hsl:function(a,b){var c=t.rgb2hsv(a);return t.hsv2hsl(b?c:n.hsv=c)},hsl2rgb:function(a){var b=6*a.h,c=a.s,d=a.l,e=.5>d?d*(1+c):d+c-c*d,f=d+d-e,g=e?(e-f)/e:0,h=~~b,i=b-h,j=e*g*i,k=f+j,l=e-j,m=h%6;return{r:[e,l,f,f,k,e][m],g:[k,e,e,l,f,f][m],b:[f,f,k,e,e,l][m]}}}}(window); -!function(a,b){"use strict";function c(b){return b.value||a(b).css("background-color")||"#fff"}function d(a){return a.originalEvent.touches?a.originalEvent.touches[0]:a}function e(b){var d,e=a(this);b?(d=e.offset(),w.$element=e,o.preventFocus&&b.preventDefault(),(p||f()).css({left:d.left,top:d.top+e.outerHeight(!0)}).show(o.animationSpeed,function(){w.alphaWidth=a(".cp-alpha",p).width(),w.sliderWidth=a(".cp-xy-slider",p).width(),n.setColor(c(e[0])),A(function(){l(!0)})})):a(p).hide(o.animationSpeed,function(){w.$element.blur()})}function f(){return a("head").append('"),p=a(B).css({margin:o.margin}).find(".cp-alpha").toggle(!!o.opacity).parent().show(0,function(){z=o.GPU&&""===a(this).css("perspective"),o.buidCallback.call(m,a(this)),q=a(".cp-xy-slider",this),r=a(".cp-xy-cursor",this),s=a(".cp-z-cursor",this),t=a(".cp-alpha",this),u=a(".cp-alpha-cursor",this)}).hide().on("touchstart mousedown pointerdown",".cp-xy-slider,.cp-z-slider,.cp-alpha",g).appendTo(document.body)}function g(b){var c=this.className.replace("cp-","").replace("-","_");b.preventDefault(),w.elementOrigin=a(this).offset(),(c="xy_slider"===c?i:"z_slider"===c?j:k)(b),v.on(y,h).on(x,c)}function h(){v.off(x).off(y)}function i(a){var b=d(a),c=b.pageX-w.elementOrigin.left,e=b.pageY-w.elementOrigin.top;n.setColor({s:c/w.sliderWidth*100,v:100-e/w.sliderWidth*100},"hsv"),A(l)}function j(a){{var b=d(a).pageY-w.elementOrigin.top;n.colors.hsv}n.setColor({h:360-b/w.sliderWidth*360},"hsv"),A(l)}function k(a){var b=d(a).pageX-w.elementOrigin.left,c=b/w.alphaWidth;n.setColor({},"rgb",c>1?1:0>c?0:c),A(l)}function l(a){var b=n.colors,c=b.hueRGB,d=b.RND.rgb,e=b.RND.hsl,f="#222",g="#ddd",h=w.$element.data("colorMode"),i=1!==b.alpha,j=Math.round(100*b.alpha)/100,k=d.r+", "+d.g+", "+d.b,l="rgba("+k+", "+j+")",p="HEX"!==h||i?"rgb"===h||"HEX"===h&&i?i?l:"rgb("+k+")":"hsl"+(i?"a(":"(")+e.h+", "+e.s+"%, "+e.l+"%"+(i?", "+j:"")+")":"#"+b.HEX,v=b.HUELuminance>.22?f:g,x=b.rgbaMixBlack.luminance>.22?f:g,y=(1-b.hsv.h)*w.sliderWidth,A=b.hsv.s*w.sliderWidth,B=(1-b.hsv.v)*w.sliderWidth,C=j*w.alphaWidth,D=z?"translate3d":"";q.css({backgroundColor:"rgb("+c.r+","+c.g+","+c.b+")"}),r.css({transform:D+"("+A+"px, "+B+"px, 0)",left:z?0:A,top:z?0:B,borderColor:b.RGBLuminance>.22?f:g}),s.css({transform:D+"(0, "+y+"px, 0)",top:z?0:y,borderColor:"transparent "+v}),t.css({backgroundColor:"rgb("+k+")"}),u.css({transform:D+"("+C+"px, 0, 0)",left:z?0:C,borderColor:x+" transparent"}),o.doRender&&w.$element.css({backgroundColor:l,color:b.rgbaMixBGMixCustom.luminance>.22?f:g}),w.$element.val(p),o.renderCallback.call(m,w.$element,a===!0)}var m,n,o,p,q,r,s,t,u,v=a(document),w={},x="touchmove mousemove pointermove",y="touchend mouseup pointerup",z=!1,A=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(a){a()},B='
',C=".cp-color-picker{position:absolute;overflow:hidden;padding:6px 6px 0;background-color:#444;color:#bbb;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:400;cursor:default;border-radius:5px}.cp-color-picker>div{position:relative;overflow:hidden}.cp-xy-slider{float:left;height:128px;width:128px;margin-bottom:6px;background:linear-gradient(to right,rgba(255,255,255,1)0,rgba(255,255,255,0)100%)}.cp-white{height:100%;width:100%;background:linear-gradient(to bottom,rgba(0,0,0,0)0,rgba(0,0,0,1)100%)}.cp-xy-cursor{position:absolute;top:0;width:10px;height:10px;margin:-5px;border:1px solid #fff;border-radius:100%;box-sizing:border-box}.cp-z-slider{float:right;margin-left:6px;height:128px;width:20px;background:linear-gradient(to bottom,red 0,#f0f 17%,#00f 33%,#0ff 50%,#0f0 67%,#ff0 83%,red 100%)}.cp-z-cursor{position:absolute;margin-top:-4px;width:100%;border:4px solid #fff;border-color:transparent #fff;box-sizing:border-box}.cp-alpha{clear:both;width:100%;height:16px;margin:6px 0;background:linear-gradient(to right,rgba(68,68,68,1)0,rgba(0,0,0,0)100%)}.cp-alpha-cursor{position:absolute;margin-left:-4px;height:100%;border:4px solid #fff;border-color:#fff transparent;box-sizing:border-box}",D=function(a){n=this.color=new b(a),o=n.options};D.prototype.render=l,D.prototype.toggle=e,a.fn.colorPicker=function(b){var d=this,f=function(){};return b=a.extend({animationSpeed:150,GPU:!0,doRender:!0,customBG:"#FFF",opacity:!0,renderCallback:f,buidCallback:f},b),m||(m=new D(b),v.on("touchstart mousedown pointerdown",function(b){-1!==a.inArray(b.target,d)||a(b.target).closest(p).length||e()}).on("focus",this.selector,e).on("change",this.selector,function(){n.setColor(this.value),d.colorPicker.render()})),this.colorPicker=m,this.each(function(){var d=c(this),e=d.split("(");a(this).data("colorMode",e[1]?e[0].substr(0,3):"HEX"),b.doRender&&a(this).css({"background-color":d,color:function(){return n.setColor(d).rgbaMixBGMixCustom.luminance>.22?"#222":"#ddd"}})})}}(window.jQuery,Colors); +!function(a,b){"use strict";function c(b){return b.value||b.getAttribute("value")||a(b).css("background-color")||"#fff"}function d(a){return a.originalEvent.touches?a.originalEvent.touches[0]:a}function e(b){return a(b.find(p.doRender)[0]||b[0])}function f(b){var d,f=a(this);b?(d=f.offset(),x.$element=e(f),p.preventFocus&&b.preventDefault(),(q||g()).css({left:d.left,top:d.top+f.outerHeight(!0)}).show(p.animationSpeed,function(){x.alphaWidth=a(".cp-alpha",q).width(),x.sliderWidth=a(".cp-xy-slider",q).width(),o.setColor(c(x.$element[0])),m(!0)})):a(q).hide(p.animationSpeed,function(){x.$element.blur(),m(!1)})}function g(){return a("head").append('"),q=a(C).css({margin:p.margin}).find(".cp-alpha").toggle(!!p.opacity).parent().show(0,function(){A=p.GPU&&""===a(this).css("perspective"),p.buidCallback.call(n,a(this)),r=a(".cp-xy-slider",this),s=a(".cp-xy-cursor",this),t=a(".cp-z-cursor",this),u=a(".cp-alpha",this),v=a(".cp-alpha-cursor",this)}).hide().on("touchstart mousedown pointerdown",".cp-xy-slider,.cp-z-slider,.cp-alpha",h).appendTo(document.body)}function h(b){var c=this.className.replace("cp-","").replace("-","_");b.preventDefault(),x.elementOrigin=a(this).offset(),(c="xy_slider"===c?j:"z_slider"===c?k:l)(b),w.on(z,i).on(y,c)}function i(){w.off(y).off(z)}function j(a){var b=d(a),c=b.pageX-x.elementOrigin.left,e=b.pageY-x.elementOrigin.top;o.setColor({s:c/x.sliderWidth*100,v:100-e/x.sliderWidth*100},"hsv"),B(m)}function k(a){{var b=d(a).pageY-x.elementOrigin.top;o.colors.hsv}o.setColor({h:360-b/x.sliderWidth*360},"hsv"),B(m)}function l(a){var b=d(a).pageX-x.elementOrigin.left,c=b/x.alphaWidth;o.setColor({},"rgb",c>1?1:0>c?0:c),B(m)}function m(a){var b=o.colors,c=b.hueRGB,d=b.RND.rgb,e=b.RND.hsl,f="#222",g="#ddd",h=x.$element.data("colorMode"),i=1!==b.alpha,j=Math.round(100*b.alpha)/100,k=d.r+", "+d.g+", "+d.b,l="rgba("+k+", "+j+")",m="HEX"!==h||i?"rgb"===h||"HEX"===h&&i?i?l:"rgb("+k+")":"hsl"+(i?"a(":"(")+e.h+", "+e.s+"%, "+e.l+"%"+(i?", "+j:"")+")":"#"+b.HEX,q=b.HUELuminance>.22?f:g,w=b.rgbaMixBlack.luminance>.22?f:g,y=(1-b.hsv.h)*x.sliderWidth,z=b.hsv.s*x.sliderWidth,B=(1-b.hsv.v)*x.sliderWidth,C=j*x.alphaWidth,D=A?"translate3d":"";r.css({backgroundColor:"rgb("+c.r+","+c.g+","+c.b+")"}),s.css({transform:D+"("+z+"px, "+B+"px, 0)",left:A?0:z,top:A?0:B,borderColor:b.RGBLuminance>.22?f:g}),t.css({transform:D+"(0, "+y+"px, 0)",top:A?0:y,borderColor:"transparent "+q}),u.css({backgroundColor:"rgb("+k+")"}),v.css({transform:D+"("+C+"px, 0, 0)",left:A?0:C,borderColor:w+" transparent"}),p.doRender&&x.$element.css({backgroundColor:l,color:b.rgbaMixBGMixCustom.luminance>.22?f:g}),x.$element.val(m),p.renderCallback.call(n,x.$element,a===!0)}var n,o,p,q,r,s,t,u,v,w=a(document),x={},y="touchmove mousemove pointermove",z="touchend mouseup pointerup",A=!1,B=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(a){a()},C='
',D=".cp-color-picker{position:absolute;overflow:hidden;padding:6px 6px 0;background-color:#444;color:#bbb;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:400;cursor:default;border-radius:5px}.cp-color-picker>div{position:relative;overflow:hidden}.cp-xy-slider{float:left;height:128px;width:128px;margin-bottom:6px;background:linear-gradient(to right,rgba(255,255,255,1)0,rgba(255,255,255,0)100%)}.cp-white{height:100%;width:100%;background:linear-gradient(to bottom,rgba(0,0,0,0)0,rgba(0,0,0,1)100%)}.cp-xy-cursor{position:absolute;top:0;width:10px;height:10px;margin:-5px;border:1px solid #fff;border-radius:100%;box-sizing:border-box}.cp-z-slider{float:right;margin-left:6px;height:128px;width:20px;background:linear-gradient(to bottom,red 0,#f0f 17%,#00f 33%,#0ff 50%,#0f0 67%,#ff0 83%,red 100%)}.cp-z-cursor{position:absolute;margin-top:-4px;width:100%;border:4px solid #fff;border-color:transparent #fff;box-sizing:border-box}.cp-alpha{clear:both;width:100%;height:16px;margin:6px 0;background:linear-gradient(to right,rgba(68,68,68,1)0,rgba(0,0,0,0)100%)}.cp-alpha-cursor{position:absolute;margin-left:-4px;height:100%;border:4px solid #fff;border-color:#fff transparent;box-sizing:border-box}",E=function(a){o=this.color=new b(a),p=o.options};E.prototype.render=m,E.prototype.toggle=f,a.fn.colorPicker=function(b){var d=this,g=function(){};return b=a.extend({animationSpeed:150,GPU:!0,doRender:!0,customBG:"#FFF",opacity:!0,renderCallback:g,buidCallback:g},b),n||(n=new E(b),w.on("touchstart mousedown pointerdown",function(b){var c=a(b.target);-1!==a.inArray(c.closest(d.selector)[0],d)||c.closest(q).length||f()}).on("focus click",this.selector,f).on("change",this.selector,function(){o.setColor(this.value),d.colorPicker.render()})),this.colorPicker=n,this.each(function(){var d=c(this),f=d.split("(");a(this).data("colorMode",f[1]?f[0].substr(0,3):"HEX"),b.doRender&&e(a(this)).css({"background-color":d,color:function(){return o.setColor(d).rgbaMixBGMixCustom.luminance>.22?"#222":"#ddd"}})})}}(window.jQuery,Colors); //# sourceMappingURL=jqColorPicker.js.map \ No newline at end of file