我有两个脚本,它们包含在 HTML 正文中。 在第一个脚本中,我初始化一个 JS 对象,该对象在第二个脚本标记中引用。
<body>
...
<script type="text/javascript" src="http://url/script.js"></script>
<script type="text/javascript">
obj.a = 1000;
obj.do();
</script>
</body>
如果第一个脚本(通过 HTTP)的加载时间很慢,会发生什么情况? body中的JS执行顺序是怎样的?
最佳答案
<script>
页面源代码中的标签与页面加载同步执行。
浏览器不会解析或渲染 <script>
之后的任何 HTML标记,直到脚本完成下载和执行。
这就是为什么最好全部移动 <script>
标签添加到页面底部,以便首先呈现 HTML。
关于JavaScript 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13806607/