jQuery backgroundColor的animate效果
我们知道jQuery几乎是我们最常用的javascript库了,不过尽管他自己本身拥有大量的特效,但却仍然缺少一些动画效果。比如说,颜色、背景颜色的变换。
animate一般只支持大小,位置,透明度的变化
今天看到新浪微博在微博发布框无内容时,点击发布按钮,发布框会有背景颜色闪烁,产生警示的效果,友好的用户体验就想模仿一下。
于是又纠结了一天。。。
刚开始我用jQuery的fadeIn和fadeOut,很快的就能达到效果。但是我发现,微博那里是逐渐地改变背景颜色实现的,而fadeIn跟fadeOut是通过逐渐改变alpha即透明度实现。所以开始纠结中。。
然后,写了段代码
var color = function(){};
color.fadeIn = function(a){
if(a>=255){
$('#input').css('backgroundColor', 'gba('+a+','+a+','+a+')');
a++;
setTimeout(color.fadeIn(a), 20);
} else {
setTimeout(color.fadeOut(a), 20);
}
}
color.fadeOut = function(a){
// 此处省略
}
简单说,我是想实现,比如rgb(a, a, a)递增至rgb(255, 255, 255) 再递减至 rgb(a, a, a)
但是效果差很多,一测试颜色没变化。
于是,打了一段测试代码
setTimeout($('#input').css('backgroundColor', 'red'), 1000);
setTimeout($('#input').css('backgroundColor', 'black'), 2000);
打开浏览器,直接就是黑色,并没有从红色跳到黑色。
。。。
后来 找到jQuery的一个插件叫jquery.color.js里面重写了backgroundColor,color,boderColor等属性颜色的animate效果
于是问题可以这样解决 :
$('#input').animate({backgroundColor:'red'}, 1000);
这样就可以从原始的背景颜色逐渐变成红色的效果。
很神奇啊,开始研究jquery.color.js的源代码。
先附上用jquery.color.js实现的颜色闪烁的警示效果代码
$('.publish a').click(function(){
var content = $('textarea').val();
if(content==""){
$('#input').stop(false, true).animate({backgroundColor:'#FF9966'}, 250)
.animate({backgroundColor:'#FFF'}, 200)
.animate({backgroundColor:'#FF9966'}, 250)
.animate({backgroundColor:'#FFF'}, 200);
} else {
$.post(url, {input:content},function(data){
});
}
});
jQuery backgroundColor的animate效果的更多相关文章
- jquery Jquery 遍历 获取设置 效果
speed: slow fast 毫秒 隐藏 显示 $(selector).hide(speed,callback) 隐藏. $(selector).show(speed,callback) 显示 $ ...
- js进阶 13-4 jquery自定义动画animate()如何使用
js进阶 13-4 jquery自定义动画animate()如何使用 一.总结 一句话总结:animate(params,[speed],[easing],[fn]),参数:params:一组包含作为 ...
- Jquery如何使用动画效果改变背景色
Jquery如何使用动画效果改变背景色 一.问题引入 jquery的animate动画虽然强大,但是无法使用其进行背景色(background-color)的动画效果变化,因为animate动画效果只 ...
- jQuery实现模拟滚动条效果;
滚动条在web开发中,很常见,原生的HTML滚动条很难看,因此很多网站借助JS来模拟实现滚动条效果: 滚动条的实现原理其实比较简单,拿垂直滚动条来说: 1),最外层容器需要设置overflow:hid ...
- JQuery 实现返回顶部效果
首先要里了解一下几个知识 $(window).scrollTop() ---滚动条距顶部距离 fadeIn() 方法使用淡入效果来显示被选元素,假如该元素是隐藏的. fadeOut() 方法使用淡出效 ...
- 【前端】用jQuery实现瀑布流效果
jQuery实现瀑布流效果 何为瀑布流: 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部.最早 ...
- jquery实战---标签页效果
在前面的博客中,小编主要简单的介绍了jquery的一些基本知识,今天这篇博文,小编继续来学习jquery的相关知识,今天我们来学习一个标签页的小例子,相关源码小编已经上传,有需要的小伙伴可以自己去下载 ...
- 使用jquery实现选项卡切换效果
几张简陋的框架效果图 页面加载时: 选项卡操作后: css样式: <style type="text/css"> *{margin:0px;padding:0px;} ...
- jQuery弹出层效果
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta ...
随机推荐
- Oracle中新增表代码
create table userinfo ( id varchar2(36) primary key, username varchar2(50) not null, password varcha ...
- 在windows 下使用git
首先安装好在windows下的linux模拟交互器 这里我选择的是cygwin 这里我是参考:http://book.51cto.com/art/201107/278731.htm 这里还要注意我这里 ...
- Mysql-函数coalesce-查询为空设置默认值
coalesce(字段,默认值) select coalesce(title,'liu') from a
- 最大ASCII的和问题
问题:One day when you are going to clear all your browsing history, you come up with an idea: You want ...
- 【poj2226】 Muddy Fields
http://poj.org/problem?id=2226 (题目链接) 题意 给出一个只包含‘.’和‘*’的矩阵,用任意长度的宽为1的木板覆盖所有的‘*’而不覆盖‘.’,木板必须跟矩形的长或宽平行 ...
- float,double,decimal使用讨论
注意:有效位:小数点前后的全部数字,不包括小数点在内 float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位) double:双精度实型,含字节数为8,64b ...
- POJ2309BST(树状数组)
BST Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9182 Accepted: 5613 Description C ...
- POJ1745Divisibility(01背包思想)
Divisibility Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 11151 Accepted: 3993 Des ...
- jprofiler安装与使用
1: 修改/etc/profile 增加以下内容: JPROFILER_HOME=/opt/jprofiler9/bin/linux-x64export LD_LIBRARY_PATH=$LD_LIB ...
- 面向对象之集合ArrayList
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using S ...