我使用grunt来编译和缩小我的js。
这包括jquery。
我现在需要将其他人的脚本添加到我的网站中,所以我已经完成了:
<script defer src="/static/js/my-site-script.js"></script>
<script type="text/javascript" src="http://www.test.com/js/someones-script.js"></script>
但这无效。
我知道这是jquery的一个问题,因为当我在其他人的脚本之前在脚本标记中添加jquery时,它可以工作。
另一个脚本包括:
$(document).ready(function() {
});
jquery也适用于我的代码。
发生了什么?
答案 0 :(得分:2)
在加载jQuery之前正在加载另一个脚本,因此您的错误。尝试删除延迟或使用require.js
等依赖库。
答案 1 :(得分:0)
很难说没有看到脚本来看副作用 - 但是第三方代码定义了自己的窗口。$因此覆盖了jQuery。
检查在noConflict模式下运行jQuery或将其设置为新值,以便安全地使用它。
如果您说错误是$未定义,那么它是在其定义之前尝试访问$的脚本之一。因此,要么使用jQuery&#39; getScript方法,要么在文档加载后找到一种运行方式,这时将定义jquery。