这是我无法理解的问题.看看这个JS代码:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<p>The Beginning...</p>
<script>
alert('Hello, Wolrd!');
</script>
<p>...The End Of Doc</p>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
所以问题是我不明白为什么The Beginning在<script>标签之前没有加载/可见段落.在几乎所有的教程中,它解释了浏览器在满足脚本之前加载所有HTML,然后当脚本满足时,浏览器开始在脚本的编译模式下工作,然后当脚本结束时,浏览器以HTML模式返回.
但实际上它似乎表现不同,因为The Beginning文本仅在脚本警报后出现:
可以请某人解释为什么会发生这种情况?
PS:只有Firefox的行为与教程中描述的相同.