Javacript实现颜色梯度变化和渐变的效果代码


Posted in Javascript onMay 31, 2013

对于本站的导航栏,想做点什么。所以,选择了用js对导航栏的颜色做了梯度的变化处理。
起初,觉得用opacity属性(透明度)来改变颜色的梯度变化。不过,这样会出现一个问题。
每一个导航标签用的是[li],当鼠标浮动到标签上时,通过onmouseover()立即改变[li]的className,并用setInterval()来使其opacity(透明度)由0变到1.不过,当鼠标离开时,对于[li]标签的颜色恢复的处理貌似麻烦了许多。所以,很快就放弃了这个做法,换种思路。

到百度上一搜,看到了一篇很好的文章,地址为http://www.cnblogs.com/cloudgamer/archive/
2009/03/11/color.html。随之,进行了简化,找到了解决的办法。

不如首先通过两个颜色值,比如"#FFFFFF"、"#CCCCCC",其中一个为起始颜色,另一个为终止颜色。通过处理,获取两种颜色在变化时的各种颜色字符串,并且字符串的个数,即获取的频率可以调节。返回给某个数组变量,代码如下:

/** 
* @Desc 该文件是改变颜色梯度的库 - colorGrad.js 
* @Author GenialX 
* @Date 2013.05.30 
* @QQ 2252065614 
* @URL http://www.ihuxu.com 
*/ /** 
* 改变颜色的入口函数 
* beginColor/endColor均为形如#FFFFFF的十六进制的字符串,rate为渐变的速度 
* @return colorArray数组 形如#FFFFFF的字符串数组 
* 调用格式 changeColor("#FFFFFF","#000000",100); 
*/ 
function getColorArray(bColor,eColor,r){ 
//过渡中的颜色值,比如#FFFFFF 
var curColor = new Object(); 
var beginColor = new Object(); 
var endColor = new Object(); 
var rate = new Object(); 
//得到每个rgb增长的方向。true代表增加,false代表减少 
var isTrue = new Object(); 
var colorArray = new Array(); 
var i = 0;//数组下标 
beginColor = getRGB(bColor);//改变成ogj类型 
endColor = getRGB(eColor);//改变成ogj类型 
curColor = getRGB(bColor); 
rate = getRate(beginColor,endColor,r); 
isTrue = getIsTrue(beginColor,endColor)
Javascript 相关文章推荐
firefox下对ajax的onreadystatechange的支持情况分析
Dec 14 Javascript
JS实现在Repeater控件中创建可隐藏区域的代码
Sep 16 Javascript
JavaScript OOP面向对象介绍
Dec 02 Javascript
解析window.open的使用方法总结
Jun 19 Javascript
js检测输入内容全为空格的方法
May 03 Javascript
jq给页面添加覆盖层遮罩的实例
Feb 16 Javascript
node.js实现回调的方法示例
Mar 01 Javascript
小发现之浅谈location.search与location.hash的问题
Jun 23 Javascript
jQuery实现浏览器之间跳转并传递参数功能【支持中文字符】
Mar 28 jQuery
vue+vant-UI框架实现购物车的复选框全选和反选功能
Nov 05 Javascript
js blob类型url的视频下载问题的解决
Nov 29 Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
Apr 27 Javascript
js 输出内容到新窗口具体实现代码
May 31 #Javascript
chrome浏览器不支持onmouseleave事件的解决技巧
May 31 #Javascript
window.event.keyCode兼容IE和Firefox实现js代码
May 30 #Javascript
js怎么终止程序return不行换jfslk
May 30 #Javascript
javascript-表格排序(降序/反序)实现介绍(附图)
May 30 #Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
May 30 #Javascript
javascript-简单的计算器实现步骤分解(附图)
May 30 #Javascript
You might like
利用static实现表格的颜色隔行显示
2006/10/09 PHP
利用php输出不同的心形图案
2016/04/22 PHP
在PHP语言中使用JSON和将json还原成数组的方法
2016/07/19 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
Windows下php+mysql5.7配置教程
2017/05/16 PHP
浅谈PHP错误类型及屏蔽方法
2017/05/27 PHP
thinkphp5修改view到根目录实例方法
2019/07/02 PHP
Nigma vs AM BO3 第一场2.13
2021/03/10 DOTA
用正则表达式 动态创建/增加css style script 兼容IE firefox
2009/03/10 Javascript
JQuery jsonp 使用示例代码
2009/08/12 Javascript
jQuery html()等方法介绍
2009/11/18 Javascript
javascript中怎么做对象的类型判断
2013/11/11 Javascript
做好七件事帮你提升jQuery的性能
2014/02/06 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
JavaScript事件代理和委托详解
2016/04/08 Javascript
详解vuex 中的 state 在组件中如何监听
2017/05/23 Javascript
利用jsonp与代理服务器方案解决跨域问题
2017/09/14 Javascript
Vue渲染函数详解
2017/09/15 Javascript
Django Admin实现上传图片校验功能
2016/03/06 Python
Python程序运行原理图文解析
2018/02/10 Python
Python2实现的图片文本识别功能详解
2018/07/11 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
Python中Selenium库使用教程详解
2020/07/23 Python
python判断变量是否为列表的方法
2020/09/17 Python
zooplus波兰:在线宠物店
2019/07/21 全球购物
行政人员工作职责
2013/12/05 职场文书
国税会议欢迎词
2014/01/16 职场文书
设计师个人求职信范文
2014/02/02 职场文书
大型会议策划方案
2014/05/17 职场文书
2014年标准化工作总结
2014/12/17 职场文书
大班下学期幼儿评语
2014/12/30 职场文书
无罪辩护词范文
2015/05/21 职场文书
公司晚宴祝酒词
2015/08/11 职场文书
初任公务员培训心得体会
2016/01/08 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
css3 实现文字闪烁效果的三种方式示例代码
2021/04/25 HTML / CSS