1. 程式人生 > >jquery擴充套件的兩個方法與區別

jquery擴充套件的兩個方法與區別

  1. jQuery.extend:Query本身的擴充套件方法
  2. jQuery.fn.extent(Object) jQuery 所選物件擴充套件方法

    jQuery.extend

    我們先把jQuery看成了一個類,這樣好理解一些。
    jQuery.extend(),是擴充套件的jQuery這個類。
    比如:猴子這個類,會說話,會爬樹。現在我們用jQuery.extend()給它增加一個本領,讓它也會敲程式碼。如下程式碼

$.extend({
    qiaodaima:function(){
        alert("我會敲程式碼了");
    }
})
//注:$是jQuery的縮寫

使用方法

$.qiaodaima();

猴子就是jQuery這個類,敲程式碼是這個類裡面的方法。
所以這個敲程式碼只有猴子會,而大象獅子並不會。
這個擴充套件也就是所謂的靜態方法。只跟這個 類 本身有關。跟你具體的例項化物件是沒關係滴。

jQuery.fn.extend()

然而jQuery.fn.extend()是用在jQuery物件上面的。
例如:

$.fn.extend({
    qiaodaima:function(htmldom){
        $(this).text("敲程式碼");
    }
});

使用方法

$(".class").qiaodaima();

另一種寫法:

(function($){
    $.fn.qiaodaima = function(htmldom){
        $(this).text("敲程式碼");
    }
})(jQuery)

呼叫方法一樣。
第二種方法定義了一個jQuery函式,形參是,jQuery.調,jQuery,使這個別名,而不會與prototype引起衝突.

??以後補充修改的地方??

區別

其實吧,jQuery.extend()這個方法,主要是用來拓展個全域性函式啦,例如.ajax()

.fn.each(),當選擇器用。
大部分外掛都是用jQuery.fn.extend()。