Jquery 缓动动画在 iPad 上滞后

Posted

技术标签:

【中文标题】Jquery 缓动动画在 iPad 上滞后【英文标题】:Jquery easing animations lag on iPad 【发布时间】:2015-01-21 15:33:53 【问题描述】:

我一直在为 ios 开发一款网络应用游戏,我注意到 iPhone 与 iPad 的性能存在显着差异。当玩家开始关卡时,使用带有 jQ​​uery UI 缓动的 jQuery .animate() 一次调用多达 20 个动画。在任何 iPhone 上都不会出现延迟或性能问题,但至少配备 Retina 的 iPad mini 似乎存在很多延迟问题。

我读到 requestanimationframe 应该是一个更好的方法,但我怎样才能使用它并仍然保持我的 jQuery UI 缓动?

谢谢!

【问题讨论】:

【参考方案1】:

看看下面的帖子

Velocity.js

Velocity.js 重新实现了 jQuery.animate()。

上面发布的链接中的示例

[jQuery 语法]

$div
 /* Fade an element in while sliding it into view. */
 .animate( opacity: 1, top: "50%" )
 /* The values below are what we originally set the element to in our  stylesheet. Animate back to them. */ 
 .animate( opacity: 0, top: "-25%" );

[Velocity.js]

$div
 .velocity( opacity: 1, top: "50%" )
 .velocity("reverse");

更多信息可以在以下指向 Velocity.js 主页的链接中找到

Velocity.js Main page

你可以从here下载Velocity.js

【讨论】:

以上是关于Jquery 缓动动画在 iPad 上滞后的主要内容,如果未能解决你的问题,请参考以下文章

jQuery 滚动延迟(滞后)在 chrome 上但在 firefox 上平滑

使用 jquery 的第一个动画后滞后

关于Jquery动画滞后问题(转)

谷歌浏览器 jQuery 动画在谷歌浏览器中滞后

UIScrollView 动画滞后

使用 Flash cs6 创建的 iPad 应用程序上的音频和动画不同步