2017-01-17 139 views
2

我使用chart.js设置了一个简单的Web图表。给定一个十六进制颜色值,如C8C8C8,我想获得rgba(200, 200, 200, x)x作为第二个变量传递。我的代码如下所示:jQuery将十六进制转换为rgba

function colorconvert(color, transparency) { 
     var r = parseInt(color.substring(0,2),16); 
     var g = parseInt(color.substring(2,4),16); 
     var b = parseInt(color.substring(4,6),16); 
     var a = parseInt(transparency); 
     return ('rgba(r, g, b, a)'); 
} 

但Chrome的开发者控制台中记录错误:

Uncaught Error: Unable to parse color from string "rgba(r, g, b, a)"

我在做什么错?任何帮助表示赞赏!

+0

,你可以在这里找到解决方案[转换六到RGBA(http://stackoverflow.com/questions/21646738/convert-hex-to -rgba) –

+0

示例:http://www.javascripter.net/faq/hextorgb.htm – Kyle

回答

3

return('rgba(r,g,b,a)');将返回文本

'rgba(r, g, b, a)' 

你应该返回类似

return ('rgba(' + r ', ' + g + ', ' + b + ', ' + a + ')'; 
+1

有一些括号和标点符号错误,但这个工作:return('rgba('+ r +','+ g + ','+ b +','+ a +')');非常感谢! – LukeLR