2

我正在使用 Foundation CSS 框架,它在页脚中加载 jQuery。这不是许多人推荐的非典型做法。但是,我需要在页面中编写脚本。使用准备好的文档应该可以解决问题,但我仍然遇到错误。为什么?

$(document).ready(function(){
    // My Code
    var a;
    $(#id).dosomething({
    // Doing Something
    });
});

就在正文关闭标签之前:

<script src="scripts/jquery-1.8.0.min.js"></script>
// More Scripts
</body>

但我得到标准错误“未捕获的 ReferenceError:$ 未定义”(4x,因为我在正文中有 4 个脚本)。此外,我无法将 jQuery 引用移到脚本调用上方,因为它与其他脚本冲突。我也无法将脚本调用移动到 jQuery 参考下方。

4

2 回答 2

4

使用准备好的文档应该可以解决问题,但我仍然遇到错误。为什么?

我想你误会了。您用于$(document).ready注册应在读取 DOM 后执行的代码,这通常是您想要操作 DOM 的时候。$这里是 jQuery,所以显然它必须在调用之前加载$(document)...

我无法将 jQuery 引用移到脚本调用上方,因为它与其他脚本冲突

也许你应该使用jQuery.noConflict() [docs]

于 2012-08-15T22:47:56.207 回答
1

它有点旧,但也许它会帮助其他人。我得到了同样的错误,这是因为我在 html 页面中的 Jquery CDN 之前加载了我自己的 JS 脚本。在调用您自己的脚本之前,您必须先调用 JQuery CDN。 <script src = "https: // jquery-link / .../jquery.js" /> 之后 <script src = "/ myfoder / myscript.js />

于 2021-01-29T15:31:17.060 回答