如何异步加载jquery及其依赖项脚本

时间:2014-06-23 09:17:01

标签: jquery asynchronous

我遇到了异步加载jquery的问题。我可以看到,如果我加载的javascript并不依赖于其他库文件的完美工作,但加载jquery脚本及其库文件与async不起作用并抛出错误$ is not defined

下面的脚本位于头标记

<script async src="../js/jquery/jquery-1.10.1.min.js">    </script>
<script async src="../js/vendor/modernizr-2.8.2.min.js"></script>
<script async src="../js/asynchronous-resources/2014-06-03-asynchronous-resources.js">   </script>

在main.js下方位于正文标记关闭上方的页脚中。

<script async src="../js/main.js"></script>

上面的脚本引发了错误。如何异步加载jquery及其依赖项。

非常感谢任何帮助。

提前致谢。

1 个答案:

答案 0 :(得分:2)

您可以尝试几种选择

如果您想按照html中指定的顺序执行脚本,那么延迟就是您所需要的。

async和defer脚本会立即开始下载而不会暂停解析器。异步和延迟之间的区别在于脚本执行时的中心。

异步脚本在完成下载后和窗口加载事件之前的第一次机会执行。

延迟脚本保证按页面中出现的顺序执行。解析完成后,但在文档的DOMContentLoaded事件之前,执行开始。

由于您已经在使用Modernizr,也许您可​​以尝试Modernizr.load

或使用require.js