我有一些JS文件直接执行函数。它是通过模块模式完成的(在这里描述://http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth)。因此,这实际上意味着我们有一个匿名的自调用函数来定义我们的对象,所有对象都保存/封装了这个对象。
这些自调用函数似乎并不一定在jquery的ready函数之前执行。
- 是真的吗?
如果我们有几个这样的文件:
module_part1.js
var MODULE = (function (my) {
my.oneFunc = function () {
// added method...
};
return my;
}(MODULE));
module_part2.js
var MODULE = (function (my) {
my.twoFunc = function () {
// added method...
};
return my;
}(MODULE));
我们可以确定,在jQuery的读取函数的功能Module.twoFunc
不是违抗?
根据定义,一旦DOM加载完毕,document.ready
就会执行。<script>
元素是DOM的一部分。当浏览器遇到<script>
标记时,它停止解析页面,下载并执行脚本,然后继续处理下一个元素。在文档内部。ready事件所有脚本(在<script>
标签中是DOM的一部分)将被加载