jQuery动画特效实例教程


Posted in Javascript onAugust 29, 2014

本文以实例形式详细讲述了jQuery动画特效的实现方法。分享给大家供大家参考之用。具体方法如下:

1.自制折叠内容块

内容块如下:

<div class="module">
  <div class="caption">
    <span>标题</span>
    <img src="rollup.gif" alt="rollup" title="rolls up this module"/>
  </div>
  <div class="body">
    近日,《体坛周报》记者马德兴在接受天津体育频道《体坛新视野》节目采访时表示自己对恒大[微博]的情况比较担忧,恒大统治力比上赛季下降了很多,恒大外援存在位置重叠的问题,客场不输给西悉尼流浪者就是一个可以接受的结果。该节目称恒大联赛3连胜胜之不武,恒大的惹不起不过尔尔,恒大失去了对其它球队压倒性的优势,能力下降是恒大霸主地位有所动摇的根源所在。
  </div>
</div>

给img元素绑定点击事件。

$(function() {
  $('div.caption img').click(function () {
 //先找到img的父级元素,再找该父级元素的子元素
 var $body = $(this).closest('div.module').find('div.body');
 if ($body.is(':hidden')) {
   $body.show();
 } else {
   $body.hide();
 }
  });
});

运行效果如下图所示:

jQuery动画特效实例教程

切换元素的显示状态,还可以用toggle方法。

$(function() {
  $('div.caption img').click(function () {
 $(this).closest('div.module').find('div.body').toggle();
  });
});

以上是没有动画效果的,有时候感觉会很唐突。实际上,show,hide,toggle方法都可以有动画效果。比如:

$(function() {
  $('div.caption img').click(function () {
 $(this).closest('div.module').find('div.body').toggle('slow');
  });
});

又比如:

$(function() {
  $('div.caption img').click(function () {
 $(this).closest('div.module').find('div.body').toggle('slow', function() {
   $(this).closest('div.module').toggleClass('rolledup', $(this).is(':hidden'))
 });
  });
});

2.使元素淡入淡出

fadeIn(speed, callback)    
fadeOut(speed, callback)
fadeTo(speed, opacity, callback)

3.上下滑动元素

slideDown(speed, callback)
slideUp(speed, callback)
slideToggle(speed, callback)

4.停止动画

stop(clearQueue, gotoEnd)

5.创建自定义动画

animate(properties, duration, easing, callback)

$('.classname').animate({opacity:'toggle'},'slow')

如果写一个扩展函数。

$.fn.fadeToggle = function(speed){
  return this.animate({opacity:'toggle'},'slow');
}

6.自定义缩放动画

$('.classname').each(function(){
  $(this).animate({
    width: $(this).width() * 2,
    height: $(this).height() * 2
  });
});

7.自定义掉落动画

$('.classname').each(function(){
  $(this)
    .css("position","relative")
    .animate({
      opacity: 0,
      top: $(window).height() - $(this).height() - $(this).position().top
    },'slow',function(){ $(this).hide(); })
});

8.自定义消散动画

$('.classname').each(function(){
  var position = $(this).position();
  $(this)
    .css({
      position: 'absolute',
      top: position.top,
      left:position.left
    })
    .animate({
      opacity: 'hide',
      width: $(this).width()*5,
      height: $(this).height()*5
      top: position.top - ($(this).height() * 5 / 2),
      left: position.left - ($(this).width() * 5 /2)
    },'normal');
});

9.队列中的动画

//动画插入队列
$('img').queue('chain', function(){});
$('img').queue('chain', function(){});
$('img').queue('chain', function(){});
$('img').queue('chain', function(){});

$('button').click(function(){
  $('img').dequeue('chain'); //删除队列中的动画
})

cleaeQueue(name)//删除所有未执行的队列中的动画
delay(duration, name)//为队列中所有未执行的动画添加延迟

相信本文所述对大家的jQuery程序设计有一定的借鉴价值。

Javascript 相关文章推荐
javascript document.execCommand() 常用解析
Dec 14 Javascript
单击浏览器右上角的X关闭窗口弹出提示的小例子
Jun 12 Javascript
javascript实现可改变滚动方向的无缝滚动实例
Jun 17 Javascript
jQuery+ajax实现鼠标单击修改内容的思路
Jun 29 Javascript
js返回前一页刷新本页重载页面
Jul 29 Javascript
javascript实现获取字符串hash值
May 10 Javascript
JQuery控制Radio选中方法分析
May 29 Javascript
JavaScript代码因逗号不规范导致IE不兼容的问题
Feb 25 Javascript
全面解析Bootstrap中nav、collapse的使用方法
May 22 Javascript
JavaScript之实现一个简单的Vue示例
Jan 17 Javascript
JS原型与继承操作示例
May 09 Javascript
jquery实现淡入淡出轮播图效果
Dec 13 jQuery
jQuery实用函数用法总结
Aug 29 #Javascript
jQuery实现异步获取json数据的2种方式
Aug 29 #Javascript
原生javascript实现的分页插件pagenav
Aug 28 #Javascript
JavaScript判断变量是对象还是数组的方法
Aug 28 #Javascript
分享一个自己动手写的jQuery分页插件
Aug 28 #Javascript
jQuery标签替换函数replaceWith()的使用例子
Aug 28 #Javascript
jQuery焦点图切换简易插件制作过程全纪录
Aug 27 #Javascript
You might like
php页面防重复提交方法总结
2013/11/25 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
JAVASCRIPT HashTable
2007/01/22 Javascript
javascript中日期转换成时间戳的小例子
2013/03/21 Javascript
多种方式实现JS调用后台方法进行数据交互
2013/08/20 Javascript
js showModalDialog参数的使用详解
2014/01/07 Javascript
影响jQuery使用的14个方面
2014/09/01 Javascript
浅析javascript中函数声明和函数表达式的区别
2015/02/15 Javascript
JavaScript Window浏览器对象模型方法与属性汇总
2015/04/20 Javascript
jquery图片倾斜层叠切换特效代码分享
2015/08/27 Javascript
prototype框架中美元符号$用法分析
2016/01/22 Javascript
javascript使用Promise对象实现异步编程
2016/03/01 Javascript
JS获取元素多层嵌套思路详解
2016/05/16 Javascript
js实现html table 行,列锁定的简单实例
2016/10/13 Javascript
使用nvm管理不同版本的node与npm的方法
2017/10/31 Javascript
javascript Function函数理解与实战
2017/12/01 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
python使用append合并两个数组的方法
2015/04/28 Python
Python中exit、return、sys.exit()等使用实例和区别
2015/05/28 Python
python中根据字符串调用函数的实现方法
2016/06/12 Python
使用EduBlock轻松学习Python编程
2018/10/08 Python
Python实现的线性回归算法示例【附csv文件下载】
2018/12/29 Python
python按键按住不放持续响应的实例代码
2019/07/17 Python
利用python-docx模块写批量生日邀请函
2019/08/26 Python
Python autoescape标签用法解析
2020/01/17 Python
深入了解python列表(LIST)
2020/06/08 Python
CSS3的Flexbox布局的简明入门指南
2016/04/08 HTML / CSS
德国汽车零件和汽车配件网上商店:kfzteile24
2018/11/14 全球购物
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
大一学生的职业生涯规划书范文
2014/01/19 职场文书
常务副总经理任命书
2014/06/05 职场文书
医院党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
大学生军训感言
2015/08/01 职场文书
市语委办2016年第十九届“推普周”活动总结
2016/04/05 职场文书
创业的9条正确思考方式
2019/08/26 职场文书
关于EntityWrapper的in用法
2022/03/22 Java/Android