01第1节:jQuery动画概述

#JavaScript#在jQuery中,除了可以淡入淡出、滑动效果之外,还可以使用animate()方法创建自定义的动画效果。

对于自定义的动画函数animate()方法,可以设置一些参数、速度和回调函数,以更灵活的配置动画效果的呈现。

02第2节:animate()方法基本功能

使用jQuery的animate()方法创建自定义动画的基本语法如下:

基本语法如下:

$(selector).animate({params},speed,callback);

基本语法说明如下:

第1个参数params必须存在,用于设置能够形成动画效果的CSS属性,可见动画效果是CSS样式实现的。第2个参数speed用于配置动画效果的速度,可选参数,如果没有值,则使用默认速度呈现动画。第3个参数callback是可选的,用于指定动画完成后所执行的函数名称。现在,我们来列举个例子,如果要让一个Html元素可以移动,需要设置该元素的position属性,这是动画的基础,完整代码如下:

此DIV会移动

在此代码中,在Html元素上使用了style属性来设置一个动画效果。运行后的结果如下:

此时,页面运行后,一个DIV放在页面的最左侧,不会移动,属于静止状态,现在,我们点击“移动”按钮,看是否可以移动。

此时,我们发现,DIV块完整的从左侧向右移动一段距离,产生了动画,这就是一个简单的动画效果。

能够让我们通过jQuery的animate()方法控制CSS样式设置的动画。

03第3节:animate()方法控制多个样式动画

我们知道,animate()方法产生的动画是由CSS样式形成的,一个CSS样式是一个动画效果,那么多个CSS样式就是多个动画效果了,此时,就可以实现更丰富的动画效果。

在使用多个CSS样式属性时,要使用英文的逗号隔开即可,如下是多动画的效果代码:

此DIV会移动

注意:在jQuery的animate()方法中,要使用Camel规范来编写属性,如paddingLeft,而不是padding-left,是没有中间的横杠的。

将上面的代码运行一下,看是如何移动的?

通过效果图,你会发现,DIV块向上和向右移动了,是具有2个动画效果的。

另外,animate()方法在设置CSS属性值时,是可以使用相对值的,就是相对于原来Html元素的当前值进行相加或相减操作(+=或-=运算)。

如下一段Jquery代码,就是使用了相对值的计算:

$("button").click(function(){$("div").animate({left:'250px',height:'+=150px',width:'+=150px'});});

04第4节:animate()方法使用已有的值

在jQuery中,animate()方法可以使用已经存在的值,可把CSS样式属性的动画值使用show/hide/toggle这3个值,用于配置动画的运动效果。

完整的Html+jQuery代码如下:

在此代码中,将id=div1元素的width属性值设置为toggle已有值。

运行一下效果吧:

此时的动画效果是,当单击“动画”按钮,则DIV块会以一定的速度显示和隐藏,且具有动画效果,不是生硬的隐藏和显示。

05第5节:animate()方法使用队列功能

在jQuery中,针对动画设置了队列的功能,就是可以同时编写多个动画,然后排成队,按队列的顺序一个一个的调用,从而达到连续性的动画。

使用队列的功能,可以做成像电影一样的功能,让多个画面连续性的动转,可持续一段时间,形成连续动画效果。

Html和jQuery完整代码如下:

在此代码中,设置了4个动作,执行时,jQuery会把它们放在一个队列中,按顺序执行,让这个div块形成连续的动画特效。

这是第二个特效了,再看一个:

这是最后一个,是上面所有动画的综合体现,位置在left和top都是300的位置。

06第6节:停止动画

一、不带参数

jQuery有一个stop()方法,主要功能是在动画完成前,可以停止动画的运行。也就是只要动画还没有演示完成,就可以停止,如果动画已运行完了,则无法停止。

jQuery中的淡入淡出、滑动、动画效果,都是可以使用stop()方法的。

stop()方法的基本语法如下:

$(selector).stop(stopAll,goToEnd);

stop()方法参数说明如下:

stopAll:可选参数,参数值是bool类型,可传入true或false。用于清除所有动画队列,然后可插入新的动画到队列中。goToEnd:也是可选的参数,用于指定是否立即完成当前动画,参数也是bool类型,参数值是true和false。默认情况下,stop()方法会清除在当前所选元素上指定的当前动画效果。

下面我们实战一下,使用stop()停止一下动画效果,完整的Html+jQuery代码如下:

在此代码,先使用slideDown()实现向下滑动功能,然后再使用top()停止滑动。效果如下:

上图中有2个按钮,先点击一下“开始”按钮,如下图所示:

在上图中,DIV开始从上向下滑动,动作很慢,现在再点击一下“停止”按钮,如下图所示:

在此图中,当停止之后,执行了stop()方法,DIV不再继续向下滑动了,如果再点“开始”,又会继续向下滑动。

二、带参数

jQuery的stop()方法,是可以带有参数的,可以传入bool类型的值,有2个可选参数。

下面我们来实战一下带参数的stop()方法的使用,完整代码如下:

开始停止停止所有停止但要完成

"开始" 按钮会启动动画。

"停止" 按钮会停止当前活动的动画,但允许已排队的动画向前执行。

"停止所有" 按钮停止当前活动的动画,并清空动画队列;因此元素上的所有动画都会停止。

"停止但要完成" 会立即完成当前活动的动画,然后停下来。

HELLO

对于animate()方法的使用,大家重点是发挥CSS样式的功底,设计出复杂的动画效果,有了动画效果,才能利用animate()方法实现动画的动作,让动画更丰富多彩。

举报/反馈

html 放上去动画停止,使用jQuery的animate()+CSS样式实现动画效果及stop()停止动画相关推荐

  1. JQuery中操作Css样式的方法

    JQuery中操作Css样式的方法 <strong>//1.获取和设置样式</strong>    $("#tow").attr("class&q ...

  2. jquery使用html()css不生效,jquery可以添加css样式吗?

    jquery可以添加css样式吗?答案是:可以.那么如何添加css样式?下面本篇文章就来给大家介绍一下使用jquery添加css样式的方法,希望对大家有所帮助. 在jquery中,可以使用addCla ...

  3. javascript、jquery 动态修改css样式方法

    javascript.jquery 动态修改css样式方法 javascript 修改样式的方法 第一种.使用obj.className来修改样式表的类名 var obj = document.get ...

  4. html样式删除,jQuery怎么删除css样式?

    有时候需要添加CSS样式和移除CSS样式,如添加display属性,设为隐藏:有时候需要移除display属性.下面本篇文章就来给大家介绍一下JS/jQuery删除css样式的方法. jQuery移除 ...

  5. css3动画简介以及动画库animate.css的使用

    在这个年代,你要是不懂一点点css3的知识,你都不好意思说你是个美工.美你妹啊,请叫我前端工程师好不好.呃..好吧,攻城尸...呵呵,作为一个攻城尸,没有点高端大气上档次的东西怎么能行呢,那么css3 ...

  6. html 动画div右侧消失,使用animate.css时,动画一开始不隐藏,如何解决呢?

    animate.css 的入场动画,一开始(初始态)怎么隐藏呢?(否则会闪一下.) 动画结束后要保持显示. 补充.. 使用了官网推荐的jquery 扩展代码,运动完后自动删除 class. 这是一个坑 ...

  7. css animation动画完成后隐藏_css3动画简介以及动画库animate.css的使用

    在这个年代,你要是不懂一点点css3的知识,你都不好意思说你是个美工.美你妹啊,请叫我前端工程师好不好.呃..好吧,攻城尸...呵呵,作为一个攻城尸,没有点高端大气上档次的东西怎么能行呢,那么css3 ...

  8. php+jq+添加css,jquery如何添加css样式?

    在运用jquery的时候我们经常需要动态的给一些dom元素添加CSS样式,下面我们来看一下Jquery如何动态的添加css样式. jquery添加css样式的方法:使用addClass() 方法添加c ...

  9. 关于jquery动态改变css样式后,对象获取不到的解决办法

    2019独角兽企业重金招聘Python工程师标准>>> 情况如下: <!DOCTYPE html> <html><head><meta ch ...

最新文章

  1. Hololens Unity 开发入门 之 Hello HoloLens
  2. Spring MVC Servlet XML文件配置
  3. python中df head_10招!看骨灰级Pythoner如何玩转Python
  4. (五)DTD验证XML文档
  5. ruby 连接mysql数据库
  6. 如何理解Nginx, WSGI, Flask之间的关系
  7. 计算机怎么更改用户头像像,Win10系统电脑账户头像怎么改成系统默认状态?
  8. java客户端作为kafka生产者测试
  9. window服务器查看硬盘有几块,从多个远程Windows服务器获取磁盘空间信息
  10. linux下目录与文件的权限及特殊权限
  11. 漫游飞行_涨知识了,手机的飞行模式还能这么用?
  12. springboot指定属性返回_Spring Boot 最最最常用的注解梳理
  13. 用 keepalived 搭建高可用集群之 IP Failover
  14. 零基础学启发式算法(6)-蚁群算法 (Ant Colony Optimization, ACO)
  15. 宝藏又小众的金属板材质贴图素材网站分享
  16. JavaScript启示录
  17. 成都理工大学乐千桤java考试,成都理工大学方案.PDF
  18. 设施规划选址——重心法
  19. 这可能是目前最好用的p2p外网访问内网软件(免费内网穿透)
  20. wamp php 如何安装,WAMP的详细安装过程分享

热门文章

  1. 关于ORACLE通过file_id与block_id定位数据库对象遇到的问题的一点思考
  2. 2016年1月书单推荐
  3. 【WiFi密码破解详细图文教程】ZOL仅此一份 详细介绍从CDlinux U盘启动到设置扫描破解-破解软件论坛-ZOL中关村在线...
  4. 循环数组中找查找某个数值
  5. 织梦CMS被挂马特征汇总
  6. Unity3D优化总结(一)
  7. golang 解决 TCP 粘包问题
  8. 通过JCONSOLE监控TOMCAT的JVM使用情况
  9. 解决listview点击item失效
  10. Linux下使用GDB进行调试