在JSColor中,我如何获得颜色的hex?

使用JSColor,在用户选择颜色后,如何获得“hex”?

$("input#colorpicker").css('background-color') => this returns background-color: rgb(107, 132, 255); 

但不是hex。

我假设jQuery.css返回已设置的值。 尝试以下函数将RGB转换为HEX:

 function colorToHex(color) { if (color.substr(0, 1) === '#') { return color; } var digits = /(.*?)rgb\((\d+), (\d+), (\d+)\)/.exec(color); var red = parseInt(digits[2]); var green = parseInt(digits[3]); var blue = parseInt(digits[4]); var rgb = blue | (green << 8) | (red << 16); return digits[1] + '#' + rgb.toString(16); }; colorToHex('rgb(120, 120, 240)') 

实际上,这取决于它以rgb或hex返回的浏览器,无论如何检查这个线程有很好的讨论,并且还有很多解决方案。

背景颜色hex到JavaScript变量

如何获得hex颜色值而不是RGB值?

我可以强制jQuery.css(“backgroundColor”)以hex格式返回吗?

jquery css颜色值返回RGB?

有onchange活动可用:

 $("input#colorpicker").change(function() { console.log(this.color); });