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 闭包在封装函数时的简单分析
Nov 28 Javascript
js 键盘记录实现(兼容FireFox和IE)
Feb 07 Javascript
js+xml生成级联下拉框代码
Jul 24 Javascript
JQuery 图片的展开和伸缩实例讲解
Apr 18 Javascript
jquery解析xml字符串示例分享
Mar 25 Javascript
js和jquery如何获取图片真实的宽度和高度
Sep 28 Javascript
jQuery插件Elastislide实现响应式的焦点图无缝滚动切换特效
Apr 12 Javascript
javascript模拟命名空间
Apr 17 Javascript
jquery实现的动态回到顶部特效代码
Oct 28 Javascript
谈谈javascript中使用连等赋值操作带来的问题
Nov 26 Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
Nov 29 Javascript
vue货币过滤器的实现方法
Apr 01 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 模拟POST|GET操作实现代码
2010/07/20 PHP
php和editplus正则表达式去除空白行
2015/04/17 PHP
thinkPHP框架动态配置用法实例分析
2018/06/14 PHP
JavaScript 选中文字并响应获取的实现代码
2011/08/28 Javascript
解析Javascript中难以理解的11个问题
2013/12/09 Javascript
JS记录用户登录次数实现代码
2014/01/15 Javascript
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
浅谈$_FILES数组为空的原因
2017/02/16 Javascript
基于JavaScript实现的希尔排序算法分析
2017/04/14 Javascript
vue2.0 axios前后端数据处理实例代码
2017/06/30 Javascript
NodeJs实现定时任务的示例代码
2017/12/05 NodeJs
基于vue.js中关于下拉框的值默认及绑定问题
2018/08/22 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
python使用mysqldb连接数据库操作方法示例详解
2013/12/03 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
利用python开发app实战的方法
2019/07/09 Python
详解Pandas之容易让人混淆的行选择和列选择
2019/07/10 Python
使用python的turtle绘画滑稽脸实例
2019/11/21 Python
Python中关于logging模块的学习笔记
2020/06/03 Python
python求解汉诺塔游戏
2020/07/09 Python
Python reques接口测试框架实现代码
2020/07/28 Python
整理HTML5中支持的URL编码与字符编码
2016/02/23 HTML / CSS
Puritan’s Pride(普丽普莱)官方网站:美国最大最全的保健品公司之一
2016/10/23 全球购物
Expedia挪威官网:酒店、机票和租车
2018/03/03 全球购物
英国最大的滑板品牌选择:Route One
2019/09/22 全球购物
如何利用cmp命令比较文件
2013/09/23 面试题
工程师岗位职责
2013/11/08 职场文书
实习鉴定评语
2014/01/19 职场文书
年终考核评语
2014/01/19 职场文书
幼儿园教师考核制度
2014/02/01 职场文书
退休教师欢送会主持词
2014/03/31 职场文书
乡镇领导班子批评与自我批评材料
2014/09/23 职场文书
2014群众路线学习笔记
2014/11/06 职场文书
感谢信怎么写
2015/01/21 职场文书
兼职安全员岗位职责
2015/02/15 职场文书
python munch库的使用解析
2021/05/25 Python