jQuery.extend和jQuery.fn.extend的区别

 我来答
育知同创教育
2018-06-27 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
jQuery.extend(object); 为jQuery类添加添加类方法,可以理解为添加静态方法。如:
XML/HTML代码
$.extend({
  add:function(a,b){return a+b;}
});
便为 jQuery 添加一个为 add 的 “静态方法”,之后便可以在引入 jQuery 的地方,使用这个方法了,
jQuery.fn.extend(object);给jQuery对象添加方法。
jQuery.fn.extend(object); 对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。
比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。可以这么做:
JavaScript代码
$.fn.extend({

alertWhileClick:function(){

$(this).click(function(){

alert($(this).val());
});
}
});

$(“#input1″).alertWhileClick();
页面上为:<input id=”input1″type=”text”/>
$(“#input1″) 为一个jQuery实例,当它调用成员方法 alertWhileClick后,便实现了扩展,每次被点击时它会先弹出目前编辑里的内容。
真实的开发过程中,当然不会做这么小白的插件,事实上jQuery提拱了丰富的操作文档,事件,CSS ,Ajax、效果的方法,结合这些方法,便可以开发出更加 Niubility 的插件。
匿名用户
2015-08-24
展开全部

$.extend(object); 为扩展jQuery类本身.为类添加新的方法。

第一种

$.extendFun = {

    alert : function(){

        alert(1);

    },

    alerts : function(){

        alert(2);

    }

}

调用的方式

$.extendFun.alert();

$.extendFun.alerts();

第二种

$.alert = function(){

    alert(1);

}

$.alert();

当然,更推荐使用第一种,添加命名空间,可以避免同名冲突

$.fn.extend(object);给jQuery对象添加方法。

$.fn 是$这个对象的原型引用,也就是我们平时的DOM对象,$(selected);

$.fn.alerts = function(){

    alert(1);

}

调用的方式

$(selected).alerts(1);

无论是$.extend还是$.fn.extend他们是创建jQuery函数的语法,除了语法上有点不一样和调用方式不一样,其实本质是差不多的,效果都是一样的,建议去看下jquery基础教程的第8章,有讲解,并且有写插件的教程


本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式