总体架构
jquery模块分类和依赖关系:
自调用匿名函数:
/** * 自调用匿名函数,jquery加载完后立即被调用,用来加载各个模块 * 为什么使用自调用匿名函数: * 通过使用自调用匿名函数,创建了一个特殊的函数作用域,该作用域 * 中的代码不会和已有的同名函数,方法和变量以及第三方库冲突。 * */ //传入undefined好处:缩短查找undefined的作用域链,确保undefined没有被重写为新值。 (function ( window, undefined ) { //传入window的好处:使window的对象变为局部变量, //不用将作用域链退回到顶层作用域。 var document = window.document, navigater = window.navigator, location = window.location; //使jQuery成为公开的全局变量 window.jQuery = window.$ = jQuery; //匿名函数传入window对象的作用:不用退回到全局执行环境找window对象,提升性能。 })(window);//注意这里的";"不能省略,自调用匿名函数后省略分号可能造成错误。