发现 window.requestAnimationFrame
并不会管理队列。即在同一帧内多次调用window.requestAnimationFrame
会导致下一次重绘时,重复动画。例如:
const animationTwice = () => console.log('I will be invoked twice!')
// 在同一帧内调用两次,导致 animationTwice 执行两次
window.requestAnimationFrame(animationTwice)
window.requestAnimationFrame(animationTwice)
// I will be invoked twice!
// I will be invoked twice!
所以,写了 raf-plus 库来管理 window.requestAnimationFrame
保证在同一帧内最多只会执行一次相同的动画函数。
有不足之处,欢迎指正
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.