tropical level
获赞
2
粉丝
0
关注
2
看过 TA
5
华中科技大学
2021
前端工程师
IP属地:广东
暂未填写个人简介
私信
关注
用css的transition和requestAnimationFrame实现一个动画,但似乎遇到了一点玄学问题。 先单击空白的地方后,再点击提交才会有动画 刷新页面,不要点击空白地方,直接提交,不会有动画 代码只有40行,求解答! 示例地址:https://pc-hu.github.io/disableBeforeClickBlank/disableBeforeClickBlank.html <!DOCTYPE html> <html> <head>  <meta charset="utf-8">...
FengYuki:的确是个很奇怪的问题, 但是我感觉楼主若换一种写法就能避免这种问题 1. 首先 RAF 的每一次调用都应该是更新一帧动画, 注意是一帧, 而不是像楼主一样用一次 RAF 来执行一个长达1s的动画. 浏览器在页面焦点发生切换时是可能对动画的帧进行优化的. 实际上, 这种调用方法也并不能发挥 RAF 的优势(即页面没有focus时动画暂停) 2. CSS3的transition 和 RAF 都是实现动画的两种方式, 最好单独用, 混在一起用的话是可能出现类似的问题. 3. 对于楼主的这种情况, 直接把 window.requestAnimationFrame 换成最原始的 setTimeout(xxx, 0) 就能解决问题.
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务