首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优化性能的JS动画建筑设计

优化性能的JS动画建筑设计
EN

Stack Overflow用户
提问于 2012-09-14 16:05:45
回答 2查看 368关注 0票数 9

GreenSock动画引擎的性能提升相当惊人。

为了获得这样的收益,这个库所做的基础架构决策和权衡是什么?特别是,这个引擎与jQuery动画有什么不同?

EN

回答 2

Stack Overflow用户

发布于 2014-04-22 20:25:07

格林索克的朋友们给出了很好的答案:

  1. 全面使用高度优化的JavaScript (这需要使用链接列表、局部变量、快速查找表、内联代码、位运算符、利用原型而不是为每个实例重新创建函数/变量等)。
  2. 设计该平台的结构,使其能够很好地适应高压环境,减少函数调用,并确保所有事情都是gc友好的。
  3. 在一个由requestAnimationFrame驱动的update循环中进行更新,必要时只返回到setTimeout()。
  4. 在内部缓存一些重要值以进行更快的更新。
  5. 对于CSS转换,当存在旋转或倾斜时,我们计算矩阵值并构造一个矩阵()或matrix3d(),因为我们的测试表明它更快。

这里有更多信息:http://forums.greensock.com/topic/9346-how-does-greensock-perform-better-than-other-solutions-for-animation/#entry37777

票数 2
EN

Stack Overflow用户

发布于 2012-09-14 23:16:07

据我所知,从闪存版本来看:

  • 它的构建/设计和优化的速度,jquery是为一致的工作流构建。
  • 它使用对象池,也就是回收多种类型的内部对象,以尽量减少实例化。
  • 它为每个场景使用优化的循环。
  • 它使用info对象来帮助/声明哪些属性是动画的。
  • 我不确定他们是否使用相同的宽松功能,但这也可能带来不同。

Tweenlite作为tweenengine有着悠久的历史,它也有许多不包含在jQuery中的特性。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12428173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档