javascript - 使用 Minicolor JS 返回 RGBA 值,而不是十六进制

标签 javascript jquery

我正在使用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/

相关文章:

javascript - 如何为javascript中数组中的每个对象分配一个随机数?

jquery - 使用 jquery 更改 href

javascript - 如何使用 JQuery 显示下拉菜单中选定的值?

jquery - html css拖放文件上传样式

javascript - 为什么我的网页显示 [object HTMLParagraphElement]?

javascript - JavaScript 中的类型转换

javascript - 有没有办法在等待 API 数据时不停止进度条?

javascript - 捆绑和最小化Durandal应用程序

javascript - Jquery onclick 动态变化

jquery $(window).height() 返回文档高度