后读how browser works和浏览器rendering process,我仍然对浏览器的解析过程中的混乱时遇到<script>
标签,该帖子没有真正覆盖。浏览器渲染网页时遇到脚本标签
主要过程是在以下PIC描述:
假设我们有一个简单的HTML
<html>
<head>
<link rel="stylesheet" href="main.css">
<script src="main.js"></script>
<link rel="stylesheet" href="another.css">
</head>
<body>
</body>
</html>
问题:
- 浏览器是单线程的,所以如何没有HTML解析器和CSS解析器工作平行
- 在HTML解析器,当遇到
<script>
标签:浏览器停止直到js文件被下载并执行完成?对于这个例子,浏览器不会下载another.css
直到main.js
下载并执行?
'“浏览器:
您可以通过一个事件监听连接到body.onload事件
<body onload="load()">
其中load()方法是在你的main.js功能看看这个做到这一点是单线程“ - 说谁? –
关于'script'标签,浏览器等待它无论脚本标签(头部或身体):例如,当它在头,浏览器完全停止渲染'body'之前解析它。 – Bigood
@Bigood,所以当解析脚本时,一切都停止了,只是等待它完成?任何下载也停止? – jason