H5W3
当前位置:H5W3 > 其他技术问题 > 正文

【Web前端问题】某些移动端 requestAnimationFrame 更慢的原因?

比如小米自带的浏览器。

原因已经找到了。就是视频中说的小米的miui V5是基于一个没有完成的浏览器版本。
解决办法在这里
JavaScript基于时间的动画算法

回答:

说不定你遇到了 MIUI 的问题,详见 Egret HTML5 大会上关于小米的一段吐槽,简单说就是 MIUI V5 基于一个有问题的浏览器内核做开发,导致浏览器性能太差,帧率上不去。

直接跳转到 27:43 观看吐槽。

链接

不过这只是猜测,你可以多换几台小米机器试试。

回答:

省電?

反正只要運算量不大,iOS 和 OSX 的 fps 一樣。

回答:

我自己想了一下觉得可能是这样。欢迎对此有研究的高人继续回答。
requestAnimationFrame是和浏览器帧频相关的。桌面浏览器一般支持的浏览器都能到60帧的帧频。
但是移动端。比如小米浏览器。支持这个方法。但是帧频只有可怜的15帧左右。假如做的效果是一个物体从0运动到500,速度恒定S。 那么它运动完需要的时间将会比桌面浏览器长4倍。所以会感觉很慢。
除非在requestAnimationFrame调用的方法中根据帧频调整速度S为以前的4倍。这样保证运动所需时间和桌面浏览器一样长。所以在使用这个方法的时候,要注意一下使用场景。

本文地址:H5W3 » 【Web前端问题】某些移动端 requestAnimationFrame 更慢的原因?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址