jquery / .js脚本的顺序

时间:2013-06-13 21:06:53

标签: javascript jquery

由于我呈现.js脚本的顺序,我的应用程序遇到了实际问题。例如,在http://jsfiddle.net/qCAW3/1中,在我更改加载js脚本的顺序之前,这些项目将不会变为可拖动。

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

任何人都可以了解导致这种情况的原因。如果我更改顺序以使可拖动项目起作用,那么我的应用程序的其他javascript部分将停止运行。

2 个答案:

答案 0 :(得分:1)

依赖关系,即当某些代码依赖于其他代码时。在网页上,JavaScript文件按照声明的顺序执行。哪个对依赖很重要!

假设您有两个.js个文件,如下所示:

// person.js
var Person = function(name) {
  this.name = name;
};

Person.prototype.greet = function() {
  alert("Hi, " + name);
}

另一个文件:

// roster.js
var roster = [
  new Person("Alex"),
  new Person("Eddy")
];

for (var i = 0; i < roster.length; i++) {
  roster[i].greet();
}

如果我们先加载roster.js,它就会爆炸。 <{1}}构造函数尚不可用,无论如何调用它都会引起预期。

如果您加载Person,然后加载person.js,那么当名册代码运行时,您可以roster.js


在您的情况下,您需要在使用jQuery的任何代码之前加载jQuery,原因完全相同。

答案 1 :(得分:0)

通常,当一个文件依赖于另一个文件时,必须在之后加载。这是一般意义上的。由于您的问题以加载顺序和时间为中心,我建议您查看here。基本上,确保在完成加载所有文件之前不要执行任何操作。