jquery的extend和fn.extend 区别

发布日期:2014-06-23 09:28:22

Jquery为开发插件提供了两个方法,分别是:

$.extend(obj);$.fn.extend(obj);

1.那么这两个分别是什么意思?

$.extend(obj);是为了扩展jquery本身,为类添加新的方法

$.fn.extend(obj);给JQUERY对象添加方法。

2.$.fn 中的fn是什么意思,其实是prototype,即$.fn=$.protoytpe;

具体用法请看下面的例子:

$.extend({

add:function(a,b){

return a+b;

}

})

$.add(5,8) //return 13

注意没有,这边的调用直接调用,前面不用任何对象。直接$.+方法名

$.fn.extend(obj);对prototype进行扩展,为jquery类添加成员函数, jquery类的实例可以使用这个成员函数。

$.fn.extend({

clickwhile:function(){

$(this).click(function(){

alert($(this).val()) 

})

}

})

$('input').clickwhile();//当点击输入框会弹出该对象的Value值

注意调用时候前面是有对象的。即$('input') 这么个东西。