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 相关文章推荐
Javascript 继承机制实例
Aug 12 Javascript
Jquery Validation插件防止重复提交表单的解决方法
Mar 05 Javascript
js字符串的各种格式的转换 ToString,Format
Aug 08 Javascript
js中reverse函数的用法详解
Dec 26 Javascript
JS实现根据出生年月计算年龄
Jan 10 Javascript
jquery代码实现多选、不同分享功能
Jul 31 Javascript
jQuery基于扩展实现的倒计时效果
May 14 Javascript
jquery.qtip提示信息插件用法简单实例
Jun 17 Javascript
AngularJS路由Ui-router模块用法示例
May 29 Javascript
JS动态修改网页body的背景色实例代码
Oct 07 Javascript
jQuery+CSS实现的标签页效果示例【测试可用】
Aug 14 jQuery
vue-model实现简易计算器
Aug 17 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
PHP面向对象详解(三)
2015/12/07 PHP
(转载)JavaScript中匿名函数,函数直接量和闭包
2007/05/08 Javascript
Jquery AutoComplete自动完成 的使用方法实例
2010/03/19 Javascript
网页中返回顶部代码(多种方法)另附注释说明
2013/04/24 Javascript
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
js实现简单的星级选择器提交效果适用于评论等
2013/10/18 Javascript
在JavaScript中使用timer示例
2014/05/08 Javascript
js+csss实现的一个带复选框的下拉框
2014/09/29 Javascript
基于jquery ui的alert,confirm方案(支持换肤)
2015/04/03 Javascript
jQuery实现美观的多级动画效果菜单代码
2015/09/06 Javascript
谈谈javascript中使用连等赋值操作带来的问题
2015/11/26 Javascript
用纯Node.JS弹出Windows系统消息提示框实例(MessageBox)
2017/05/17 Javascript
JavaScript for循环 if判断语句(学习笔记)
2017/10/11 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
JavaScript中将值转换为字符串的五种方法总结
2019/06/06 Javascript
jquery插件开发模式实例详解
2019/07/20 jQuery
微信小程序new Date()方法失效问题解决方法
2019/07/29 Javascript
微信小程序 多行文本显示...+显示更多按钮和收起更多按钮功能
2019/09/26 Javascript
react PropTypes校验传递的值操作示例
2020/04/28 Javascript
JavaScript图像放大镜效果实现方法详解
2020/06/28 Javascript
处理JavaScript值为undefined的7个小技巧
2020/07/28 Javascript
Vue前端判断数据对象是否为空的实例
2020/09/02 Javascript
微信小程序实现自定义动画弹框/提示框的方法实例
2020/11/06 Javascript
python脚本监控docker容器
2016/04/27 Python
python生成以及打开json、csv和txt文件的实例
2018/11/16 Python
python使用requests.session模拟登录
2019/08/09 Python
详解Python中的format格式化函数的使用方法
2019/11/20 Python
复古风格的女装和装饰品:ModCloth
2017/12/29 全球购物
英国领先的野生鸟类食品供应商:GardenBird
2018/08/09 全球购物
什么是唯一索引
2015/07/05 面试题
计算机应用职专应届生求职信
2013/11/12 职场文书
出生医学证明样本
2014/01/17 职场文书
机电一体化求职信
2014/03/10 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
python文件目录操作之os模块
2021/05/08 Python
剑指Offer之Java算法习题精讲二叉树的构造和遍历
2022/03/21 Java/Android