後讀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