<script>标签会阻塞并一个接一个地执行吗?

时间:2016-07-10 19:07:51

标签: javascript

在下面的代码中, bar.js 只能在 foo.js 加载并运行后运行吗?

&#xA;&#xA; < pre> &lt;!DOCTYPE html&gt;&#xA;&lt; html&gt;&#xA;&lt; body&gt;&#xA; &lt; script src ='foo.js'&gt;&lt; / script&gt;&#xA; &lt; script src ='bar.js'&gt;&lt; / script&gt;&#xA;&lt; / body&gt;&#xA;&lt; / html&gt;&#xA; &#xA ;&#xA;

假设我不使用 async deferred ,我想是的。但是,此问题坚持以编程方式设置 src 的脚本不会阻止 - 这不适用于字面插入的&lt; script&gt; 标签吗?

&#xA; {{66} } {{11}} 38295548 {{22}} {{33}} {{44}} {{55}}

你应该检查一般的嫌疑人:

&#xA;&#xA;
    &#xA;
  1. 您的Java(或您正在使用的任何语言)应用程序存在问题'用来索引。如果是这种情况,请说明实施细节,我会提供更多指导;
  2. &#xA;
  3. 您正在 NRT 缓存在20分钟后填满,硬提交不会很快发生。要检查此选项,请在按以下方式将文档从缓存写入光盘之前设置要索引的最大文档数:&lt; autoCommit&gt; &lt; maxDocs&gt; 10000&lt; / maxDocs&gt;&lt; / autoCommit&gt; 如果出现问题,您可以调整自动提交或NRT缓存管理。
  4. &#XA; &#XA;

2 个答案:

答案 0 :(得分:2)

根据这个页面(https://www.safaribooksonline.com/library/view/even-faster-web/9780596803773/ch04.html),用src加载的外部.js文件确实会按顺序运行,这是预期的行为。较旧的浏览器将按顺序下载外部文件,然后按顺序运行它们,而较新的浏览器将并行(同时)下载它们,但仍然按顺序运行它们。根据此页面上的答案(Implications of multiple <script> tags in HTML),内联标记也会按顺序运行。链接的第一个网站显示了多种方法可以同时运行多个外部脚本,但是,如果这是您想要的行为。

答案 1 :(得分:2)

不,它不适用。

&#39;脚本&#39; HTML代码中的标记始终会阻止。

参考:高性能Javascript,1。 - &gt;脚本定位