关于animate()的认知

关于animate()的认知

一、课程中,看了jQuery中有对动画的操作并且给出了animate()这个函数,在使用的过程中发现如果不用stop()方法,那么animate()会等待上一个动画结束之后才执行。

二、以前写动画一般都是在css中直接写好了的,就以本课程透明度动画为例把,css中实现可以用transition:all 0.5来实现这一效果,js中只需要把透明度改成0就会有效果了,不一样的是,这样的写法不会存在上一个动画执行完毕后再执行后一个,我觉得应该是,所有元素都在同一个时间段执行了,不会等待,因此这里引发了我一个问题,jQuery中可以用stop来停止动画,那是不是运行起来的时候jQuery消耗的性能更少一点,对计算机更好一点,如果是这样。老师能不能大概讲下jQuery是怎么实现直接停止了的

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,问题解答如下:

1. 第一点的理解是正确的。多次使用animate()创建动画,动画会进行排队,前一个动画执行完毕,后一个动画再开始执行。

2. 就像同学所说的那样,多个css()方法一起调用实现动画,这些动画会同时进行,不会进行排队。

3. jQuery中可以用stop来停止动画,主要是用为了能让我们快速切换动画,并不是考虑性能。比如动画1执行的时候,我不想看了,我想直接看动画2,如果不使用stop,那就只能等待动画1执行完毕,再看动画2,而使用stop可以立刻终止动画1,直接看到动画2的效果。

4. jQuery的stop方法,是对js进行封装之后实现的,同学不需要去关注它的具体实现原理和过程,只要知道它怎么用即可。

如果我的回答帮到了你,欢迎采纳,祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师