动画无非两类:帧动画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">&nbsp;</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 动画总结(主要指效果函数)的更多相关文章

  1. js进阶 13-1 jquery动画中的显示隐藏函数有哪些

    js进阶 13-1 jquery动画中的显示隐藏函数有哪些 一.总结 一句话总结:show(),hide(),toggle(),这三个. 1.jquery动画中显示隐藏效果函数有哪些? show()h ...

  2. js进阶 13-6 jquery动画效果相关常用函数有哪些

    js进阶 13-6 jquery动画效果相关常用函数有哪些 一.总结 一句话总结:animate(),stop(),finish(),delat()四个. 1.stop()方法的基本用法是什么(sto ...

  3. jQuery动画高级用法(上)——详解animation中的.queue()动画队列插队函数

    决定对animate方面做一些总结,希望能给大家一些启发和帮助 从一个实际应用谈起 今天不谈animate().fadeIn().fadeOut().slideUp().show().hide()诸如 ...

  4. python 全栈开发,Day53(jQuery的介绍,jQuery的选择器,jQuery动画效果)

    js总结 js: 1.ECMAScript5 ES5语法 2.DOM CRUD 获取 3种方式 id tag className //面向对象 对象 : 属性和方法 某个对象中 function $( ...

  5. jQuery动画高级用法(上)——详解animation中的.queue()函数

    如果你拿着一个疑问去找专业人士寻找答案,那么你的一个疑问会变成三个,因为他会用另外两个令你更加一头雾水的名词来解释你的这个疑问. 我想这是大多数,包括我在内,IT人在学习过程中碰到的最大问题.当你有一 ...

  6. jquery动画效果总结

    一.jquery的动画速度fast-slow对应着600ms,200ms,不写是400ms 二.禁用jquery的动画 将jQuery.fx.off设置为true即可 $(".stoppin ...

  7. JQuery动画效果

    jquery动画效果常用方法 1.show()显示效果语法:show(speed,callback)Number/String,Function speend为动画执行时间,单位为毫秒.也可以为slo ...

  8. jquery 动画效果插件

    从jQuery API 文档中可以知道,jQuery自定义动画的函数.animate( properties [, duration] [, easing] [, complete] )有四个参数: ...

  9. jQuery 效果函数

    jQuery 效果函数 方法 描述 animate() 对被选元素应用“自定义”的动画 clearQueue() 对被选元素移除所有排队的函数(仍未运行的) delay() 对被选元素的所有排队函数( ...

随机推荐

  1. 洛谷.2754.星际转移问题(最大流Dinic 分层)

    题目链接 枚举时间 每一个时间点 对于每个之前的位置像当前位置连边,表示这一时刻可待在原地 每艘船 之前时刻位置向当前时刻连边 注意别漏了0时刻src连向earth的边 #include<cst ...

  2. Python3基础系列-基本入门语法

    本文简单地介绍了python的一些基本入门知识,通过对这些知识的了解,大家可以写一些简单的代码,同时也为后面深入理解打下基础.本文的主要内容如下: 值和类型 值,即value,通常有:1,2,3.14 ...

  3. [HDU5685]Problem A

    来源: 2016"百度之星" - 资格赛(Astar Round1) 思路: 首先处理出所有前缀的哈希$f$,对于所有的询问$[a,b]$,答案即为$\frac{f[b]}{f[a ...

  4. 【NOIP2018】【RP++!】【神大退役记+一丢丢回忆录】

    emmm初赛都完了啊,还有20多天的样子退役选手又要++++++了 所以在这里先预祝各路dalao取得好成绩!! 手动艾特亲友$@Abyssful@阿澈说他也想好好学习@Ed\_Sheeran@歪瓜是 ...

  5. Git问题Everything up-to-date解决

    Git问题Everything up-to-date解决 [自己的亲身错误体验] 我的上一篇博客,说了怎么上传一个项目到git远程上面.今天我写好一个小栗子,准备再次上传的时候.我依旧是放在我的F:\ ...

  6. Codeforces 989E A Trance of Nightfall 矩阵快速幂+DP

    题意:二维平面上右一点集$S$,共$n$个元素,开始位于平面上任意点$P$,$P$不一定属于$S$,每次操作为选一条至少包含$S$中两个元素和当前位置$P$的直线,每条直线选取概率相同,同一直线上每个 ...

  7. java.lang.ClassCastException: cn.itcase.serviceImpl.servicestudentImpl cannot be cast to javax.servlet.Servlet

    java.lang.ClassCastException: cn.itcase.serviceImpl.servicestudentImpl cannot be cast to javax.servl ...

  8. webstorm安装教程

    之前有些一些破解的,但是独独忘记了安装的这个教程,现在补上:见下: 先来一官方的解释:WebStorm是JetBrains 推出的一款强大的HTML5编辑工具,拥有丰富的代码快速编辑,可以智能的补全代 ...

  9. linux <<eof

    在平时的运维工作中,我们经常会碰到这样一个场景:执行脚本的时候,需要往一个文件里自动输入N行内容.如果是少数的几行内容,还可以用echo追加方式,但如果是很多行,那么单纯用echo追加的方式就显得愚蠢 ...

  10. android: 接收系统广播

    Android 内置了很多系统级别的广播,我们可以在应用程序中通过监听这些广播来得到 各种系统的状态信息.比如手机开机完成后会发出一条广播,电池的电量发生变化会发出一 条广播,时间或时区发生改变也会发 ...