一、加载资源的形式
- 输入url加载html(http://coding.m.imooc.com)
- 加载html中的静态资源(<script src="static/js/jquery.js"></script>)
二、加载一个资源的过程
- 浏览器根据DNS服务器得到域名的IP地址
- 向这个IP的机器发送http请求
- 服务器收到,处理并返回http请求
- 浏览器得到返回的内容
三、浏览器渲染页面的过程
- 根据HTML结构生成一个DOM Tree
- 根据CSS生成CSSOM
- 将DOM和CSSOM整合形成RenderTree
- 根据RenderTree开始渲染和展示
注意:遇到<script>时,会执行阻塞渲染。CSS渲染DOM树,而JS有权利改变DOM树,不能同时进行,所以肯定需要一个先后顺序,所以遇到了script时,会阻塞渲染。
四、题目解答
- 从输入url到得到html的详细过程
解答:
(1)浏览器根据DNS服务器得到域名的IP地址
(2)向这个IP对应的机器发送http
(3)服务器收到、处理并返回http请求
(4)浏览器得到返回内容
- window.onload和DOMContentLoaded的区别
解答:
(1)window.onload页面的全部资源加载完才会执行,包括图片、视频
(2)DOMContentLoaded渲染完即可执行,此时图片、视频没有加载完