登风 2015-07-08 08:50 采纳率: 100%
浏览 1640

浏览器下载和渲染html顺序

这个问题一直困扰着我,求教!
找了一些资料:
浏览器加载显示html页面内容的顺序
其实浏览器加载显示html的顺序是按下面的顺序进行的:
1、IE下载的顺序是从上到下,渲染的顺序也是从上到下,下载和渲染是同时进行的。
2、在渲染到页面的某一部分时,其上面的所有部分都已经下载完成(并不是说所有相关联的元素都已经下载完)。
3、如果遇到语义解释性的标签嵌入文件(JS脚本,CSS 剑 敲创耸盜E的下载过程会启用单独连接进行下载。
4、并且在下载后进行解析,解析过程中,停止页面所有往下元素的下载。
5、样式表在下载完成后,将和以前下载的所有样式表一起进行解析,解析完成后,将对此前所有元素(含以前已经渲染的)重新进行渲染。
6、JS、CSS中如有重定义,后定义函数将覆盖前定义函数。

还是有些疑问,JS脚本在head里嵌入,此时body页面内容应该还没加载,先加载JS脚本,那DOM树应该还没构建,但JS脚本中要通过DOM去操作HTML。而且如果body页面内容加载好了再加载JS,那通过DOM又改变了html内容又不一样了!菜鸟求大神赐教!谢谢

  • 写回答

2条回答

  • threenewbee 2015-07-08 11:32
    关注

    浏览器的渲染是一个极其复杂的过程,这个需要大量的测试。
    js脚本的定义和执行是两个概念。你在head中写js代码,不等于它就被执行。你定义方法但是不调用它是不会执行的。

    评论

报告相同问题?

悬赏问题

  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员