window.requestAnimationFrame() 方法告诉浏览器您希望执行动画并请求浏览器在下一次重绘之前调用指定的函数来更新动画。该方法使用一个回调函数作为参数,这个回调函数会在浏览器重绘之前调用。-- MDN当我们调用这个函数的时候,我们告诉它需要做两件事:
页面首次加载时,浏览器会下载并解析 HTML,将 HTML 元素转变为一个 DOM 节点的「内容树」(content tree)。除此之外,样式同样会被解析生成「渲染树」 (render tree)。为了提升性能,渲染引擎会分开完成这些工作,甚至会出现渲染树比 DOM 树更快生成出来。在这个阶段里最影响绘制时间的自然就是Layout了
生成布局后,浏览器将页面绘制到屏幕上。这个环节和前一个步骤类似,浏览器会追踪脏元素,将它们合并到一个超大的矩形区域中。每一帧内只会发生一次重绘,用于绘制这个被污染区域。这个阶段对性能的影响主要在于重绘。
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |