时间:2021-05-18
今天做组织机构,要分级别显示颜色,自己计算半天也没算出颜色渐变的方法,出来总是花里胡哨的难看的不要不要的,所以查了一下,找到一个js代码,试了试,很完美哦!
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title></head><body><script src="js/jquery-1.11.3.js"></script><script src="js/swiper-3.3.1.jquery.min.js"></script><script type="text/javascript"> function gradientColor(startColor,endColor,step){ startRGB = this.colorRgb(startColor);//转换为rgb数组模式 startR = startRGB[0]; startG = startRGB[1]; startB = startRGB[2]; endRGB = this.colorRgb(endColor); endR = endRGB[0]; endG = endRGB[1]; endB = endRGB[2]; sR = (endR-startR)/step;//总差值 sG = (endG-startG)/step; sB = (endB-startB)/step; var colorArr = []; for(var i=0;i<step;i++){ //计算每一步的hex值 var hex = this.colorHex('rgb('+parseInt((sR*i+startR))+','+parseInt((sG*i+startG))+','+parseInt((sB*i+startB))+')'); colorArr.push(hex); } return colorArr; } // 将hex表示方式转换为rgb表示方式(这里返回rgb数组模式) gradientColor.prototype.colorRgb = function(sColor){ var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; var sColor = sColor.toLowerCase(); if(sColor && reg.test(sColor)){ if(sColor.length === 4){ var sColorNew = "#"; for(var i=1; i<4; i+=1){ sColorNew += sColor.slice(i,i+1).concat(sColor.slice(i,i+1)); } sColor = sColorNew; } //处理六位的颜色值 var sColorChange = []; for(var i=1; i<7; i+=2){ sColorChange.push(parseInt("0x"+sColor.slice(i,i+2))); } return sColorChange; }else{ return sColor; } }; // 将rgb表示方式转换为hex表示方式 gradientColor.prototype.colorHex = function(rgb){ var _this = rgb; var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; if(/^(rgb|RGB)/.test(_this)){ var aColor = _this.replace(/(?:(|)|rgb|RGB)*/g,"").split(","); var strHex = "#"; for(var i=0; i<aColor.length; i++){ var hex = Number(aColor[i]).toString(16); hex = hex<10 ? 0+''+hex :hex;// 保证每个rgb的值为2位 if(hex === "0"){ hex += hex; } strHex += hex; } if(strHex.length !== 7){ strHex = _this; } return strHex; }else if(reg.test(_this)){ var aNum = _this.replace(/#/,"").split(""); if(aNum.length === 6){ return _this; }else if(aNum.length === 3){ var numHex = "#"; for(var i=0; i<aNum.length; i+=1){ numHex += (aNum[i]+aNum[i]); } return numHex; } }else{ return _this; } } var gradient = new gradientColor('#e82400','#8ae800',10); console.log(gradient);//控制台输出 alert(gradient); for(var i=0;i<gradient.length;i++){ var htmls='<div class="mmm'+i+'">'+i+'</div>'; $("body").append(htmls); console.log($("mmm"+i)); console.log(gradient[i]); $(".mmm"+i).css("background-color",gradient[i]); }</script></body></html>以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了js滑动提示效果,供大家参考,具体内容如下js代码漂亮的动画效果;在靠右上角:背景颜色为红,字体颜色为白色滑动变大上移缓慢渐变消失funct
今天给大家介绍一下wordpress用到的js效果库1.fat.js实现颜色的渐变效果首先包含fat.js文件,只要在你要实现效果的元素上加上class=”fa
本文实例讲述了js+HTML5实现canvas多种颜色渐变效果的方法。分享给大家供大家参考。具体实现方法如下:Yourbrowserdoesnotsupport
本文实例讲述了js实现按钮颜色渐变动画效果的方法。分享给大家供大家参考。具体如下:这里演示js实现按钮慢慢变色的方法,鼠标移到按钮上,按钮的背景色就发生变化,是
之前为大家分享很多纯css3实现的实用按钮,今天给大家带来一款纯css3实现的颜色渐变按钮。这款按钮的边框和文字的颜色通过css3实现两种颜色的渐变,效果非