浏览器的 16ms 渲染帧
来源:互联网 发布:淘宝助理顺丰快递模板 编辑:程序博客网 时间:2024/06/05 21:57
渲染帧是指浏览器一次完整绘制过程,帧之间的时间间隔是DOM视图更新的最小间隔。
由于主流的屏幕刷新率都在60hz,因此渲染一帧的事件就必须控制在16.7ms内才能保证不掉帧。也就是说每一次渲染都要在 16.7ms 内页面才够流畅不会有卡顿感。 这段时间内浏览器需要完成如下事情:
- js执行:脚本造成了需要重绘的改动,比如增删 DOM、请求动画等
- 样式计算
- layout
- paint:各层分别进行绘制(比如 3D 动画)
- 合成:合成各层渲染结果。
一个帧内要做这么多事情……如果js执行时间过长超过16.7ms,就会block住,那么就会丢掉一次帧的绘制。
一般一个帧内的多次DOM改动会被合并渲染。
window.requestAnimationFrame
用于在下一个渲染帧之前执行一个回调函数。
可以用来做逐帧动画,这会使你的动画函数先于浏览器重绘动作。通常来说,被调用的频率就是60hz。
参考文章
浏览器的 16ms 渲染帧
阅读全文
0 0
- 浏览器的 16ms 渲染帧
- 浏览器的渲染模式
- 浏览器的渲染引擎
- 浏览器的渲染机制
- 浏览器的渲染
- 浏览器渲染的流程
- 浏览器的渲染机制
- 浏览器的渲染顺序
- 浏览器的渲染机制
- 浏览器的渲染原理
- 浏览器的渲染机制
- 浏览器的渲染机制
- 浏览器的渲染过程
- 浏览器渲染的过程
- 浏览器的渲染机制
- 浏览器的渲染
- 浏览器的渲染原理简介
- 浏览器的渲染原理简介
- JS中的异步以及事件轮询机制
- git管理:sourcetree的使用
- GetTickCount
- percona 断网rpm安装,配置文件修改及安全初始化
- JS中的bind的实现以及使用
- 浏览器的 16ms 渲染帧
- Mysql 数据库date, datetime类型设置0000-00-00默认值报错问题
- Web worker 与JS中异步编程的对比
- 装了多个tomcat后修改tomcat端口
- 瀑布流布局
- 标准模式和混杂模式下浏览器的可视区域的宽高问题
- Mac Codesign: signature too large to embed
- cookie和session的区别异同
- eclipse远程调试tomcat服务