继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

jquery中的$.fn的用法

不牛逼
关注TA
已关注
手记 4
粉丝 0
获赞 2

一、$.fn.method()=function(){}和$.fn.extend({})的比较

jQuery.fn === jQuery.prototype

1.$.fn.method()=function(){}的调用把方法扩展到了对象的prototype上,所以实例化一个jQuery对象的时候,它就具有了这些方法。

比如:

$.fn.myExtension = function(){ var currentjQueryObject = this; //work with currentObject
 return this;//you can include this if you would like to support chaining};


$.fn.blueBorder = function(){ this.each(function(){
  $(this).css("border","solid blue 2px");
 }); return this;
};
$.fn.blueText = function(){ this.each(function(){
  $(this).css("color","blue");
 }); return this;
};


由于有return this,所以支持链式,在调用的时候可以这样写:$('.blue').blueBorder().blueText();

2.$.fn.extend({}) 是对$.fn.method()=function(){}的扩展,它可以定义多个方法:

$.fn.extend({
    a: function() { },
    b: function() { }
});

等效于:

$.fn.a = function() { };
$.fn.b = function() { };

二、$.extend({})  ,为jQuery类添加方法,可以理解为扩展静态方法(财直通)

 

$.extend({
    abc: function(){
        alert('abc');
    }
});

 

usage: $.abc(). (No selector required like $.ajax().)



打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP