对jQuery的引用顺序重要吗?

对jQuery的引用顺序重要吗?,jquery,Jquery,我对jQuery还很陌生。我在项目母版页中引用jQuery时遇到了一个问题(您可以在下面找到我母版页的一部分)。我想在页面中使用datepicker,所以我在另一组引用(对于我整个项目中的任何其他jQuery)的上方添加了一组引用(jQueryUI和css),但当我运行它时,它总是给我“jQueryUndefined”警报 有趣的是,如果我将datepicker的引用集向下移动到另一个引用集之后(就像下面所示的顺序),它就会正常工作。我不知道渲染页面时是否与顺序有关。任何信息将不胜感激 <

我对jQuery还很陌生。我在项目母版页中引用jQuery时遇到了一个问题(您可以在下面找到我母版页的一部分)。我想在页面中使用datepicker,所以我在另一组引用(对于我整个项目中的任何其他jQuery)的上方添加了一组引用(jQueryUI和css),但当我运行它时,它总是给我“jQueryUndefined”警报

有趣的是,如果我将datepicker的引用集向下移动到另一个引用集之后(就像下面所示的顺序),它就会正常工作。我不知道渲染页面时是否与顺序有关。任何信息将不胜感激

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>
        <asp:ContentPlaceHolder ID="TitleContent" runat="server" />
    </title>
    <script type="text/javascript" src="../../Scripts/jquery-1.7.2.min.js"></script>
    <link href="../../Content/Site.css" rel="Stylesheet" type="text/css"/>
    <!--date picker-->
    <script type="text/javascript" src="../../Scripts/jquery-ui-1.8.22.custom.min.js"></script>
    <link href="../../Content/jquery-ui-1.8.22.custom.css" rel="Stylesheet" type="text/css"/>
    <!--date picker-->
</head>

是的,JavaScript被解析为“自上而下”

所有依赖项都需要在依赖项引用之前被引用。

JavaScript是按照DOM中遇到
脚本
标记的顺序执行的(默认情况下)-如果在加载依赖项之前加载某个具有依赖项的库,则会出现错误(如您所发现的)

见:

使用这些属性可以选择三种可能的模式。如果存在async属性,则脚本将在可用时立即异步执行。如果不存在async属性,但存在defer属性,则在页面完成解析后执行脚本如果两个属性都不存在,则在用户代理继续解析页面之前,将立即获取并执行脚本。


Emphasis mine

jquery ui是扩展jquery功能而构建的。因此,如果你在那之前不引用它,显然它不会正确理解一件事。。所以jQuery库是第一位的,然后插件应该是第二位的。。浏览器将自上而下解析代码。感谢您的帮助,致Xander、sushanth和Sean。您的答案帮助。