微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – JQuery如何做动画?

JQuery是用 Javascript编写的.作为对每个人都知之甚少的人,我不得不想知道他们是如何写出一些的.你如何在纯Javascript中动画HTML元素?是否只是使用标准DOM操作重复更新要动画的CSS属性,并使用回调使其异步?还是更复杂的东西?

解决方法

jQuery动画只是在定期计时器上更新CSS属性(这使得它异步).

它们还实现了一种补间算法,该算法可以跟踪动画是提前还是落后于计划,并且可以根据需要调整动画中每个步骤的步长以赶上或减慢.这允许动画在指定的时间内完成,无论主机的速度有多快.缺点是计算机缓慢或繁忙会显示更多不稳定的动画.

它们还支持缓动函数,这些函数控制动画加速的时间/形状.线性意味着恒定的速度.摆动是一种更典型的,开始缓慢,在中间加速到最大速度然后慢慢结束.

因为动画是异步的,所以jQuery还实现了一个动画队列,以便您可以指定要逐个执行的多个动画.第二个动画在第一个动画结束时开始,依此类推. jQuery还提供了一个完成函数,因此如果你想在动画完成时运行一些自己的代码,你可以指定一个在动画完成时调用的回调函数.这允许您在动画完成时执行某些操作,例如启动某些其他对象的动画,隐藏对象等…

仅供参考,如果您需要更多详细信息,jQuery javascript source code将完全可用.这项工作的核心是一个名为doAnimation()的本地函数,尽管大部分工作都是在名为step和update的函数中完成的,可以在jQuery.fx.prototype的定义中找到.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐