因此,requestAnimationFrame()
被认为是在使用高强度动画时不会导致浏览器挂起的最佳做法,但低强度动画呢?
我没有秒针动画一个钟面,所以动画不需要每5秒左右更新一次(因为没有明显的变化)比这更小的增量)。如果还有其他负载发生,我是否还应该使用requestAnimationFrame()
让浏览器推迟动画?或者,对于像时钟指针这样的慢速/小变化动画来说,setInterval()
仍然是最好的旧版本?
我目前正在做类似的事情:
setInterval(function() {
requestAnimationFrame(clockTick);
}, 5000);
像这样嵌套这两个人是否有点过分了?
答案 0 :(得分:0)
我网站的一项功能是您的“概述”页面会自动更新。但是,因为我添加了requestAnimationFrame
,所以只有在您查看标签本身时才会更新。
这意味着用户可以浏览其他网站,然后当他们回到我的网站时,他们会立即看到更新发生。一些用户称赞这个功能非常酷。
需要注意的重要一点是,这是setTiemout
而不是setInterval
。使用setInterval
和requestAnimationFrame
将导致大量更新操作排队等待下一个aniation框架。
然而,在这样的情况下,可能不值得使用requestAnimationFrame
- 事实上,如果有人在半小时后回来看到你的时钟显示与以前相同的时间,它甚至可能会产生负面影响在它更新到新的时间之前...当我打开屏幕时,我的手机会这样做,这是令人讨厌的XD所以真的,这是一个逐案决定。