jquery 动画总结(主要指效果函数)
动画无非两类:帧动画frame和变形动画tween,以及3d动画。不论web还是安卓苹果app,动画原理都是这些。
web app 动画实现的途径,无非这几种:
1 gif动画---这就是帧动画,把若干图片按时间顺序串起来。gif不能为程序控制,主要应用在固定的重复动画效果。
2 flash动画---可做复杂绚丽的动画,并可使用脚本。曾几何时flash在2000年左右火的一塌糊涂。随着html5的发展,相信flash市场份额会继续下滑。
3 css动画---一般的动画效果配合,css3+html5可做很多动画效果,但是也容易消耗内存,使浏览器出现卡顿现象。
4 脚本动画---也是这篇主要研究的jquery效果总结,可以通过程序控制动画,画质比gif要好很多。
5 html5动画---html5+非常强大,也是webapp的未来。真有一统江湖的感觉。
jQuery动画效果,在w3school.com.cn学习课程中是这几项
jQuery 隐藏/显示---hide() show()
jQuery 淡入淡出---fadeIn()从隐藏到可见, fadeOut()从可见到隐藏 ,fadeTo()把被选元素逐渐改变至给定的不透明度
jQuery 滑动---slideDown()slideUp()slideToggle()
jQuery 动画---animate() 方法用于创建自定义动画
语法: $(selector).animate({params},speed,callback);
必需的 params 参数定义形成动画的 CSS 属性。
可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是动画完成后所执行的函数名称。
animate() - 使用相对值,需要在值的前面加上 += 或 -=
animate() - 使用预定义的值,可以把属性的动画值设置为 "show"、"hide" 或 "toggle"
animate() - 使用队列功能,彼此之后编写多个 animate() 调用,逐一运行这些 animate 调用
jQuery stop()---stop() 方法适用于所有 jQuery 效果函数,包括滑动、淡入淡出和自定义动画。
语法: $(selector).stop(stopAll,goToEnd);
可选的 stopAll 参数规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。
可选的 goToEnd 参数规定是否立即完成当前动画。默认是 false。
因此,默认地,stop() 会清除在被选元素上指定的当前动画。
jQuery Callback---当动画 100% 完成后,即调用 Callback 函数。
典型的语法:$(selector).hide(speed,callback)
callback 参数是一个在 hide 操作完成后被执行的函数。
jQuery Chaining---Chaining 允许我们在一条语句中允许多个 jQuery 方法(在相同的元素上)。这样的话,浏览器就不必多次查找相同的元素。语法上也简洁优雅。
例如:$("#p1").css("color","red").slideUp(2000).slideDown(2000);
在参考手册中jQuery 效果函数
方法 描述
animate() 对被选元素应用“自定义”的动画
clearQueue() 对被选元素移除所有排队的函数(仍未运行的)
delay() 对被选元素的所有排队函数(仍未运行)设置延迟
dequeue() 运行被选元素的下一个排队函数
fadeIn() 逐渐改变被选元素的不透明度,从隐藏到可见
fadeOut() 逐渐改变被选元素的不透明度,从可见到隐藏
fadeTo() 把被选元素逐渐改变至给定的不透明度
hide() 隐藏被选的元素
queue() 显示被选元素的排队函数
show() 显示被选的元素
slideDown() 通过调整高度来滑动显示被选元素
slideToggle() 对被选元素进行滑动隐藏和滑动显示的切换
slideUp() 通过调整高度来滑动隐藏被选元素
stop() 停止在被选元素上运行动画
toggle() 对被选元素进行隐藏和显示的切换
行胜于言!学习方法都需要实践演练才能掌握。马上示例Demo:Demo实现了领取奖励(红包)时的一个简单的动画,先是从小到大,然后抖动,最好显示红包金额。
有图胜万言。

1、---先说html div---
<div class="a44 ">
<div class="a441 vpbg "></div>
</div>
<div class="a45">
<div class="a451 vpbg ">
<div class="a4513">
<span id="num"> </span>元
</div>
</div>
</div>
2、---再说样式---
/* 领取奖励 */
.a44 { position:absolute; top:0%; left:0%; width:100%; height:100%; z-index:1010; display:none; }
.a441 { position:relative; margin-top:222px; width:470px; height:282px; background-image:url('../img/act2/a6/redbag1.png'); }
.a45 { position:absolute; top:0%; left:0%; width:100%; height:100%; z-index:1010; display:none; }
.a451 { position:relative; margin-top:0px; width:653px; height:592px; background-image:url('../img/act2/a6/redbag2.png'); }
.a4513 { width:100%; padding-top:200px; color:#fff799; font-size:2rem; text-align:center; }
.a4513 span{ font-size:4rem; font-weight:bold; }
/* 复用 邀请透明层 */
.a91 { position:fixed; top:0%; left:0%; width:100%; height:200%; background:rgba(0, 0, 0, 0.8) none repeat scroll 0 0!important; filter:Alpha(opacity=80); background:#000000; z-index:1000; display:none; }
.a92 { position:fixed; top:0%; left:0%; width:100%; height:100%; z-index:1010; display:none; }
.a921 { width:800px; height:600px; background-image:url('../img/user/invite.png'); }
3、---jquery动画---
<script type="text/javascript">
$(function(){
$('.a45').click(function(){
$('.a91').hide();
$('.a45').hide();
});
//领取满分奖励
$('#getRedBag').click(function(){
getWin();
});
//初始化成小图
$('.a441').animate({'width': '5.825%',height:'2.5%','margin-top':'31.89%'}, 0);
//动画test
//tween();
//setTimeout(function(){
// shake($('.a44'));
// },1000);
});
//动画小变大
function tween(){
$('.a441').animate({'width': '5.825%','height':'2.52%','margin-top':'31.89%',opacity:'1.0',}, 0);
$('.a91').show();
$('.a44').show();
$('.a441').animate({'width': '58.25%','height':'25.2%','margin-top':'19.5%',opacity:'1.0',},600);
}
//动画微旋抖动
function shake(t) {
t.addClass('shake shake-slow shake-constant');
setTimeout(function() {
t.removeClass('shake-constant');
$('.a44').hide();
$('.a91').show();
$('.a45').show();
}, 870);
}
</script>
//备注说明:
1、$(selector).animate({params},speed,callback);动画的callback没有试验成功,一个动画完结,下个动画并没有开始,而是两个动画一并执行了。为什么是这样,我还没弄明白。留待以后研究吧。
2、抖动动画,结合了css样式shake shake-slow shake-constant
3、关于时间方面,有两个函数可用。
setTimeout(function() {动画;},ms); //setTimeout函数是执行ms时长后结束,ms是毫秒。
setInterval(动画, 1500);//以1.5秒的频率,反复执行动画。
//动画效果--左右晃动
var changeDivPosition = function(){
$('.a12 img').animate({'left': '1.5%'}, 600).animate({'left': '0%'}, 600);
};
changeDivPosition();
objSetInter = setInterval(changeDivPosition, 1500);
分享即学习,分享即成长。通过学习大牛们的博文,我也学会了以最大的诚意分享自己所学。一个人思路难免狭隘,对出现的错误,欢迎读过的朋友拍砖纠正一二。
jquery 动画总结(主要指效果函数)的更多相关文章
- js进阶 13-1 jquery动画中的显示隐藏函数有哪些
js进阶 13-1 jquery动画中的显示隐藏函数有哪些 一.总结 一句话总结:show(),hide(),toggle(),这三个. 1.jquery动画中显示隐藏效果函数有哪些? show()h ...
- js进阶 13-6 jquery动画效果相关常用函数有哪些
js进阶 13-6 jquery动画效果相关常用函数有哪些 一.总结 一句话总结:animate(),stop(),finish(),delat()四个. 1.stop()方法的基本用法是什么(sto ...
- jQuery动画高级用法(上)——详解animation中的.queue()动画队列插队函数
决定对animate方面做一些总结,希望能给大家一些启发和帮助 从一个实际应用谈起 今天不谈animate().fadeIn().fadeOut().slideUp().show().hide()诸如 ...
- python 全栈开发,Day53(jQuery的介绍,jQuery的选择器,jQuery动画效果)
js总结 js: 1.ECMAScript5 ES5语法 2.DOM CRUD 获取 3种方式 id tag className //面向对象 对象 : 属性和方法 某个对象中 function $( ...
- jQuery动画高级用法(上)——详解animation中的.queue()函数
如果你拿着一个疑问去找专业人士寻找答案,那么你的一个疑问会变成三个,因为他会用另外两个令你更加一头雾水的名词来解释你的这个疑问. 我想这是大多数,包括我在内,IT人在学习过程中碰到的最大问题.当你有一 ...
- jquery动画效果总结
一.jquery的动画速度fast-slow对应着600ms,200ms,不写是400ms 二.禁用jquery的动画 将jQuery.fx.off设置为true即可 $(".stoppin ...
- JQuery动画效果
jquery动画效果常用方法 1.show()显示效果语法:show(speed,callback)Number/String,Function speend为动画执行时间,单位为毫秒.也可以为slo ...
- jquery 动画效果插件
从jQuery API 文档中可以知道,jQuery自定义动画的函数.animate( properties [, duration] [, easing] [, complete] )有四个参数: ...
- jQuery 效果函数
jQuery 效果函数 方法 描述 animate() 对被选元素应用“自定义”的动画 clearQueue() 对被选元素移除所有排队的函数(仍未运行的) delay() 对被选元素的所有排队函数( ...
随机推荐
- Python常见下划线
python中常见的下划线意义 Python中常常使用下划线里对变量进行修饰,通常作为变量的前缀或者后缀出现,被修饰的变量一般存在特殊的用法: _XXX:不能被from module import _ ...
- 潭州课堂25班:Ph201805201 python 操作数据库 第五课 (课堂笔记)
一 用 python 操作 mysql 1,导入 pymysql 2,检查配置文件, 3,端口转发 如果 python 在本机,数据库在远程,或虚拟机则需要 4用 python 连接 # -*- co ...
- python的条件与循环1
一.if语句 功能 计算机又被称作电脑,意指计算机可以像人脑一样,根据周围环境条件(即expession)的变化做出不同的反应(即执行代码) if语句就是来控制计算机实现这一功能. if语句小结 if ...
- Redis管道理解
Redis管道理解 简介 管道并不是Redis本身提供的功能,通常是客户端提供的功能: 管道就是打包多条无关命令批量执行,以减少多个命令分别执行消耗的网络交互时间(TCP网络交互),可以显著提升Red ...
- linux sendmail 发送缓慢的问题
这个问题关键就是hosts里面对于本机host的设置有问题,你可以看下/var/log/mail.log retry 和 sleeping,再加上其他时间,用sendmail发送邮件等这么久,太累了吧 ...
- Linux.Centos.yum命令的“No module named yum”错误
Centos版本: uname -a Linux ygpiao -.el6.x86_64 # SMP Tue Jun :: UTC x86_64 x86_64 x86_64 GNU/Linux 在一次 ...
- Spring中 @Autowired标签与 @Resource标签 的区别(转)
Spring不但支持自己定义的@Autowired注解,还支持由JSR-250规范定义的几个注解,如:@Resource. @PostConstruct及@PreDestroy. 1. @Autowi ...
- STM32 逐次逼近寄存器型(SAR)模拟数字转换器(ADC)
是采样速率低于5Msps (每秒百万次采样)的中等至高分辨率应用的常见结构. SAR ADC的分辨率一般为8位至16位,具有低功耗.小尺寸等特点. 这些特点使该类型ADC具有很宽的应用范围,例如便携/ ...
- Linux shell命令 cp 加上-f还是提示是否覆盖
这是由于环境变量中有 allias cp='cp -i' 为了去掉这个系统自带的别名,能够使用grep -r --include="*" "alias cp" ...
- 这些年我在技术路上做过最虚伪愚蠢的事情,就是在CSDN上刷屏赚分
现在似乎Github成了所谓技术人士的新宠,之前是博客,更早则是论坛. CSDN是众多技术论坛里比较突出的一个,人多高手也多,很多问题都能得到满意的回答. 谁都希望自己卓尔不群,我也不例外,我也想像那 ...