javascript计算渐变颜色的实例
有时候,一个表格或者一片区域内,需要若干同色系从浅到深的颜色,如图所示:
如果需要的颜色少,则颜色的差异较大,需要的颜色多,则颜色差异小,如下图:
这时,就用到了同色系渐变颜色的计算,算法如下:
- function getItemColors (colorLevel) {
- var colors= [];
- //默认的最深颜色
- var red = 134,green = 108, blue = 184;
- //最浅颜色是239,239,239 比如:最浅颜色的red是 239 则差值为239-134=105
- var maxRed = 105,maxGreen = 131,maxBlue = 55;
- var level = colorLevel;
- while(level--) {
- colors.push( 'rgb('+red +','+green+','+blue+')');
- red += parseInt(maxRed/colorLevel);
- green += parseInt(maxGreen/colorLevel);
- blue += parseInt(maxBlue/colorLevel);
- }
- return colors;
- }
来源: http://www.jb51.net/article/124318.htm