我正在使用minicolor.js jQuery 插件,用于为我正在处理的项目选择颜色。问题是,即使我将颜色选择器设置为选择 alpha 颜色,它仍然只返回 6 位十六进制代码,而不是 8 位十六进制或 RGBA
这是我的初始化 JS
$(function(){
$('.color').each(function(){
$(this).minicolors({
opacity: true,
});
});
});
我发现我的代码添加了如下内容:
change: function(hex, opacity) {
console.log(hex + ' - ' + opacity);
}
但这似乎对我的值(value)没有任何帮助。
Here is the website I am working on.正如您所看到的,将任何输入设置为 alpha 值仍会将其保留为 6 位十六进制。
我已经被这个问题难住了一段时间了,官方文档也不是很友好。有什么想法吗?
最佳答案
使用此函数
将Hex
转换为RGB对象
,传递您的十六进制值并返回RGB代码。
function hex2rgb(hex) {
hex = parseInt(((hex.indexOf('#') > -1) ? hex.substring(1) : hex), 16);
return {
r: hex >> 16,
g: (hex & 0x00FF00) >> 8,
b: (hex & 0x0000FF)
};
}
并将此函数调用为:
var rgb = hex2rgb('your HEX value');
喜欢:
var rgb = hex2rgb('#0088cc');
现在,您可以使用 rgb
对象来提取 R-G-B 值,例如:
console.log(rgb.r);
console.log(rgb.g);
console.log(rgb.b);
关于javascript - 使用 Minicolor JS 返回 RGBA 值,而不是十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21845357/