浏览器构造页面的原理

当浏览器从服务器接收到了HTML文档,并把HTML在内存中转换成DOM树,在转换的过程当中若是发现某个节点(node)上引用了CSS或者IMAGE,就会再发1个request去请求CSS或image,而后继续执行下面的转换,而不须要等待request的返回,当request返回后,只须要把返回的内容放入到DOM树中对应的位置就OK。但当引用了JS的时候,浏览器发送1个js request就会一直等待该request的返回。由于浏览器须要1个稳定的DOM树结构,而JS中颇有可能有代码直接改变了DOM树结构,好比使用document.write 或 appendChild,甚至是直接使用的location.href进行跳转,浏览器为了防止出现JS修改DOM树,须要从新构建DOM树的状况,因此就会阻塞其余的下载和呈现。node

相关文章
相关标签/搜索