初始化JQuery方法与,function

一、初始化JQuery对象

  DOM加载完成时运行代码

1.$(document).ready(function(){  全写
  // 在这里写你的代码...
    });
2.jQuery(function(){ 
    // 在这里写你的代码...
});

3.$(function(){       简写方法,$等价于jQuery
    // 在这里写你的代码...
});
以上三个等价,这个函数初始化为一个jQuery对象:$(obj);
都是在DOM加载完成时运行代码

 二、(funtion(){})();立即执行函数;相当于先申明一个函数,声明完后直接调用;顺序加载JS时,加载到时执行

  

(function(){

  //要执行的代码

  })(para)匿名方法

而调用函数 时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:(function(arg){...})(param)

  就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数

(funtion(str){alert(str)})("output"));相当于:funtion OutPutFun(str){alert(str);};OutPutFun("output");

匿名方法:只调用,使用一次的方法

三、延伸:  

(function($) {

    //代码

  })(jQuery)什么意思?

初始化JQuery对象,其实际上是执行()(para)匿名方法,只不过是传递了jQuery对象。

**************************************************************************

简单理解是

(function($){...})(jQuery)用来定义一些需要预先定义好的函数

  注意:写成 var countdown = function(){}的话在 jQuery对象函数中不能被调用 所以顶定义的函数必须是公共的,去掉 var;

$(function(){ })则是用来在DOM加载完成之后运行\执行那些预行定义好的函数.

**************************************************************************

总结:

jQuery(function(){ });用于存放操作DOM对象的代码,执行其中代码时DOM对象已存在。不可用于存放开发插件的代码,因 为jQuery对象没有得到传递,外部通过jQuery.method也调用不了其中的方法(函数)。

(function(){ })(jQuery);用于存放开发插件的代码,执行其中代码时DOM不一定存在,所以直接自动执行DOM操作的代码 请小心使用。

js匿名对象介绍:  

  js的匿名函数很强大,

(function(paramA){...})(b);(匿名函数在js中因为也是对象,所以需要双括号包裹起来)

  这个结构就说明了,我使用了匿名函数,并且立刻执行这个匿名函数.

再分析(function(paramA){...})(b)这种格式,匿名函数部分参数paramA是个形参,用在匿名函数内部作为值的调用,而b这个参数就是个实参,是将b这个值代入到函数内部.