Javascript jQuery只适用于文档的前半部分;下半场未捕获的引用错误

Javascript jQuery只适用于文档的前半部分;下半场未捕获的引用错误,javascript,jquery,Javascript,Jquery,我的JS文档的前半部分工作正常(并使用jQuery),但后半部分工作不正常。在控制台上,它显示: 未捕获引用错误:$未在app.js:20中定义 第20行是$(文档)开始的地方 在HTML中,我的文档末尾有jQuery引用: <script type='text/javascript' src='js/jquery-3.2.1.min.js'></script> 问题在于调用脚本文件 在编写就绪函数之前,需要调用 /*响应宽度变化*/ 常量mq=window.matc

我的JS文档的前半部分工作正常(并使用jQuery),但后半部分工作不正常。在控制台上,它显示:

未捕获引用错误:$未在app.js:20中定义

第20行是
$(文档)
开始的地方

在HTML中,我的文档末尾有jQuery引用:

<script type='text/javascript' src='js/jquery-3.2.1.min.js'></script>

问题在于调用脚本文件

在编写
就绪函数
之前,需要调用

/*响应宽度变化*/
常量mq=window.matchMedia('(最大宽度:991px');
mq.addListener(WidthChange);
函数宽度更改(mq){
if(mq.matches){
$('nav')。removeClass('affix');
$('nav').addClass('upper');
$('li').css('display','inline');
}
否则{
$('nav').addClass('affix');
$('nav').removeClass('upper');
$('li').css('display','');
}
};
/*航行*/
$(文档).ready(函数(){
$('h2')。在('click',函数(evt)上{
$('h2').css('color','red');
控制台日志(“单击”);
});
});

你的问题已经有答案了。原因是,jQuery引用位于页面底部。在函数内部使用时,整个文档用作查找jQuery元素的引用,但在页面本身中使用时,需要在使用之前导入它,因此会出现错误。

jQuery插入是您插入的第一个javascript吗?问题在于页面中没有正确定义jQuery。我可以看到您的脚本引用,因此要么路径错误,要么您将其放在了错误的位置jQuery需要在使用之前加载。我认为将脚本标记放在HTML中就是导入jQuery。我如何确保它是进口的?我是编程新手,在网上很难找到答案。最好的方法是在HTML页面的头部导入文件中需要的任何内容。通过这种方式,始终可以确保文件在主体中可用。关于这一点,你可以参考一些更好的见解。我的意思是,在javascript文件中,如果它在没有HTML的情况下单独运行?在javascript文件中,导入时不需要脚本标记。在一个javascript文件中,导入一个done始终位于文件顶部。