有什么方法可以控制 Javascript 异步加载顺序?
Any way to control Javascript Async Load Order?
如何设置两个外部 async
Javascript 文件的加载和执行顺序?
鉴于以下...
<script src="framework.js" async></script> // Larger file
<script src="scripts.js" async></script> // Small file
尽管由于文件大小原因,第二个 scripts.js
在 framework.js
之前下载和执行,但是 scripts.js
依赖于 framework.js
。
有没有一种方法可以在本地指定加载和执行顺序,同时仍然保持 async
属性?
如果要保留执行顺序,请使用defer
。 defer
的作用是异步下载脚本,但推迟执行直到 html 解析完成。
<script src="framework.js" defer></script>
<script src="scripts.js" defer></script>
但是,您可能希望在脚本数量增加后开始创建自定义包。
你可以看出区别here
如果您需要 IE9 的解决方案(因为它不支持 defer
属性),我创建了一个小型加载程序脚本:
https://github.com/mudroljub/js-async-loader
它异步加载所有脚本,然后按顺序执行它们。
如何设置两个外部 async
Javascript 文件的加载和执行顺序?
鉴于以下...
<script src="framework.js" async></script> // Larger file
<script src="scripts.js" async></script> // Small file
尽管由于文件大小原因,第二个 scripts.js
在 framework.js
之前下载和执行,但是 scripts.js
依赖于 framework.js
。
有没有一种方法可以在本地指定加载和执行顺序,同时仍然保持 async
属性?
如果要保留执行顺序,请使用defer
。 defer
的作用是异步下载脚本,但推迟执行直到 html 解析完成。
<script src="framework.js" defer></script>
<script src="scripts.js" defer></script>
但是,您可能希望在脚本数量增加后开始创建自定义包。
你可以看出区别here
如果您需要 IE9 的解决方案(因为它不支持 defer
属性),我创建了一个小型加载程序脚本:
https://github.com/mudroljub/js-async-loader
它异步加载所有脚本,然后按顺序执行它们。