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 相关文章推荐
复制本贴标题和地址的js代码
Jul 01 Javascript
JavaScript打字小游戏代码
Dec 26 Javascript
js键盘上下左右键怎么触发function(实例讲解)
Dec 14 Javascript
js动态调用css属性的小规律及实例说明
Dec 28 Javascript
jquery实现弹出div,始终显示在屏幕正中间的简单实例
Mar 08 Javascript
JavaScript中的substr()方法使用详解
Jun 06 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
Jul 07 Javascript
ReactNative-JS 调用原生方法实例代码
Oct 08 Javascript
解析Javascript单例模式概念与实例
Dec 05 Javascript
JS实现标签滚动切换效果
Dec 25 Javascript
vue在线动态切换主题色方案
Mar 26 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
Mar 31 Javascript
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编写大型网站问题集
2007/03/06 PHP
Smarty中的注释和截断功能介绍
2015/04/09 PHP
php 利用array_slice函数获取随机数组或前几条数据
2015/09/30 PHP
THINKPHP截取中文字符串函数实例代码
2017/03/20 PHP
经常用的图片在容器中的水平垂直居中实例
2007/06/10 Javascript
jquery ajax提交表单数据的两种方式
2009/11/24 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
StringTemplate遇见jQuery冲突的解决方法
2011/09/22 Javascript
js跨浏览器实现将字符串转化为xml对象的方法
2013/09/25 Javascript
js简单实现用户注册信息的校验代码
2013/11/15 Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
2015/12/14 Javascript
Bootstrap被封装的弹层
2016/07/20 Javascript
解析微信JS-SDK配置授权,实现分享接口
2016/12/09 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
Vue 2.0中生命周期与钩子函数的一些理解
2017/05/09 Javascript
详解Vue如何支持JSX语法
2017/11/10 Javascript
JS常用的几种数组遍历方式以及性能分析对比实例详解
2018/04/11 Javascript
react-navigation之动态修改title的内容
2018/09/26 Javascript
利用Dectorator分模块存储Vuex状态的实现
2019/02/05 Javascript
vue中监听返回键问题
2019/08/28 Javascript
BootstrapValidator实现表单验证功能
2019/11/08 Javascript
Js图片点击切换轮播实现代码
2020/07/27 Javascript
微信小程序自定义底部弹出框动画
2020/11/18 Javascript
python解析xml文件实例分享
2013/12/04 Python
详解python实现读取邮件数据并下载附件的实例
2017/08/03 Python
Python设置在shell脚本中自动补全功能的方法
2018/06/25 Python
PyTorch搭建一维线性回归模型(二)
2019/05/22 Python
django中间键重定向实例方法
2019/11/10 Python
Python多继承以及MRO顺序的使用
2019/11/11 Python
Python3爬虫里关于代理的设置总结
2020/07/30 Python
美国运动鞋和运动服零售商:Footaction
2017/04/07 全球购物
N.Peal官网:来自伦敦的高档羊绒品牌
2018/10/29 全球购物
2015年教学副校长工作总结
2015/07/22 职场文书
学法用法心得体会(2016推荐篇)
2016/01/21 职场文书
HR在给员工开具离职证明时,需要注意哪些问题?
2019/07/03 职场文书
周一早安温馨问候祝福语!
2019/07/15 职场文书