URL解析到呈现的过程:URL解析-请求过程-渲染-js引擎

浏览器的内核分为两个核心部分,渲染引擎与js引擎

  • 请求过程

1.浏览器获取url进行域名解析,本地DNS缓存 -> DNS服务器查找,如果都没有找到,则浏览器返回请求失败

2.DNS解析出请求地址,浏览器想这个地址发送请求(tcp三次握手建立连接)

3.浏览器向服务器发送http请求,服务处理请求并返回相应的资源(浏览器缓存机制

4.客户端下载资源,浏览器将内容展示到窗口

  • 渲染过程

浏览器工作流程:构建DOM -> 构建CSSOM ->RenderObject树 -> 构建渲染树 -> 布局 -> 绘制

1.解析html生成DOM Tree, 所有元素存在于DOM Tree

2.解析css生成CSS Rule Tree(css规则树)

3.RenderObject树 通过js引擎来解析Javascript脚本,主要是通过DOM API和CSSOM API来操作DOM Tree和CSS Rule Tree.

4.DOM Tree 与CSS Rule Tree结合生成Render Tree(渲染树

5.然后计算每个DOM节点的位置大小等,根据渲染树来布局,这一过程叫reflow(回流)

6.最后调用系统Native GUI API进行绘制(重绘)回流必然重绘

虚拟dom生成原理就是采用createDocumentFragment方法;文档碎片原理 减少对DOM 修改带来的的回流操作

  • 加载过程

JavaScript的加载、解析与执行会阻塞DOM的构建,也就是说,在构建DOM时,HTML解析器若遇到了JavaScript,那么它会暂停构建DOM,将控制权移交给JavaScript引擎,等JavaScript引擎运行完毕,浏览器再从中断的地方恢复DOM构建。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值