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 相关文章推荐
prototype Element学习笔记(篇二)
Oct 26 Javascript
JavaScript 工具库 Cloudgamer JavaScript Library v0.1 发布
Oct 29 Javascript
禁止ajax缓存获取程序最新数据的方法
Nov 19 Javascript
jQuery 计算iframe 窗口大小的方法
May 13 Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
Sep 14 Javascript
JS实现的表格行鼠标点击高亮效果代码
Nov 27 Javascript
两种方法解决javascript url post 特殊字符转义 + & #
Apr 13 Javascript
jQuery改变form表单的action,并进行提交的实现代码
May 25 Javascript
JavaScript中关于iframe滚动条的去除和保留
Nov 17 Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
Mar 27 jQuery
深入理解vue-router之keep-alive
Aug 31 Javascript
Vue如何获取数据列表展示
Dec 11 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简单静态页生成过程
2008/03/27 PHP
计算一段日期内的周末天数的php代码(星期六,星期日总和)
2009/11/12 PHP
php模板原理讲解
2013/11/13 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
2015/03/27 PHP
Yii2中OAuth扩展及QQ互联登录实现方法
2016/05/16 PHP
php正则去除网页中所有的html,js,css,注释的实现方法
2016/11/03 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
PHP JWT初识及其简单示例
2018/10/10 PHP
Laravel 自动生成验证的实例讲解:login / logout
2019/10/14 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
JS 表单验证大全
2011/11/23 Javascript
关于JavaScript中的关联数组分析
2013/04/09 Javascript
通过javascript获取iframe里的值示例代码
2013/06/24 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
javascript实现动态导入js与css等静态资源文件的方法
2015/07/25 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
2020/09/13 Javascript
Angular.js与Bootstrap相结合实现手风琴菜单代码
2016/04/13 Javascript
vue如何实现observer和watcher源码解析
2017/03/09 Javascript
Ext JS 实现建议词模糊动态搜索功能
2017/05/13 Javascript
深入理解 Koa 框架中间件原理
2018/10/18 Javascript
JavaScript实现美化滑块效果
2019/05/17 Javascript
Python 自动安装 Rising 杀毒软件
2009/04/24 Python
python分析网页上所有超链接的方法
2015/05/08 Python
Python八大常见排序算法定义、实现及时间消耗效率分析
2018/04/27 Python
解决Python 使用h5py加载文件,看不到keys()的问题
2019/02/08 Python
Python队列RabbitMQ 使用方法实例记录
2019/08/05 Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
2020/02/29 Python
基于Python 的语音重采样函数解析
2020/07/06 Python
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
CSS3之transition实现下划线的示例代码
2018/05/30 HTML / CSS
我的求职计划书
2014/01/10 职场文书
先进党支部事迹材料
2014/01/13 职场文书
担保书格式
2015/01/20 职场文书
倡议书格式及范文
2015/04/29 职场文书
《我在为谁工作》:工作的质量往往决定生活的质量
2019/12/27 职场文书
如何使用Python对NetCDF数据做空间相关分析
2021/04/21 Python