jQuery.extend 与 jQuery.fn.extend的用法及区别实例分析


Posted in jQuery onJuly 25, 2018

本文实例讲述了jQuery.extend 与 jQuery.fn.extend的用法及区别。分享给大家供大家参考,具体如下:

jQuery是一个JavaScript类,如$("#input1") 生成一个 jQuery类的实例。

jQuery为开发插件提拱了两个方法:jQuery.fn.extend()jQuery.extend()

1、jQuery.extend()

(1)扩展 jQuery 类本身,为jQuery类添加类方法(静态方法)

jQuery.extend({
add: function(a, b) { alert(a + b); }
});
jQuery.add(10,20); //30

(2)jQuery.extend(object, object1, [objectN])用一个或多个其他对象来扩展一个对象,返回被扩展的对象

var obj = { name: 'Alice', age: 25, career: "teacher" };
var object = { name: 'Bruce', career: "doctor" };
jQuery.extend(obj, object); //obj = { name: 'Bruce', age: 25, career: "doctor" }

2、jQuery.fn.extend()

把对象挂载到 jQuery 的 prototype 属性,来扩展一个新的 jQuery 实例方法,也就是通过这个 extend 添加的新方法,实例化的 jQuery 对象都能使用,因为它是挂载在 jQuery.fn 上的方法。

查看jQuery源码可发现,jQuery.fn = jQuery.prototype。jQuery.fn挂在原型上,由于对原型的修改会影响所有实例,因此fn上的方法会对每一个jQuery实例有效。

jQuery.fn的扩展,就是为jQuery类添加成员函数,jQuery类的实例可以使用这个成员函数。

jQuery.fn.extend({
   clickFunc: function() {
      $(this).click(function(){
         alert($(this).val());
      });
   }
});
$("#input1").clickFunc(); //输出文本框的文本

3、jQuery.extend()jQuery.fn.extend()的区别

jQuery.extend()是为jQuery类添加类方法(静态方法),需要通过jQuery类来调用(直接使用 $.xxx 调用);

jQuery.fn.extend()是为jQuery类添加成员函数(实例方法),所有jQuery实例都可以直接调用(需要使用 $().xxx 调用)。

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery用noConflict代替$的实现方法
Apr 12 jQuery
jQuery加密密码到cookie的实现代码
Apr 18 jQuery
jQuery ajax请求struts action实现异步刷新
Apr 19 jQuery
jQuery响应滚动条事件功能示例
Oct 14 jQuery
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 jQuery
jQuery实现使用sort方法对json数据排序的方法
Apr 17 jQuery
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 jQuery
JQuery获取元素尺寸、位置及页面滚动事件应用示例
May 14 jQuery
jquery 时间戳转日期过程详解
Oct 12 jQuery
jquery轮播图插件使用方法详解
Jul 31 jQuery
jQuery编写QQ简易聊天框
Aug 27 jQuery
jQuery实现导航样式布局操作示例【可自定义样式布局】
Jul 24 #jQuery
jQuery实现菜单的显示和隐藏功能示例
Jul 24 #jQuery
jQuery实现的监听导航滚动置顶状态功能示例
Jul 23 #jQuery
jquery实现搜索框功能实例详解
Jul 23 #jQuery
jQuery实现的点击按钮改变样式功能示例
Jul 21 #jQuery
jQuery实现输入框的放大和缩小功能示例
Jul 21 #jQuery
jQuery实现table表格信息的展开和缩小功能示例
Jul 21 #jQuery
You might like
PHP之COOKIE支持详解
2010/09/20 PHP
php获取数据库中数据的实现方法
2017/06/01 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
JAVASCRIPT HashTable
2007/01/22 Javascript
类似CSDN图片切换效果脚本
2009/09/17 Javascript
javascript 面向对象继承
2009/11/26 Javascript
jquery last-child 列表最后一项的样式
2010/01/22 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
jQuery基本过滤选择器用法示例
2016/09/09 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
JavaScript你不知道的一些数组方法
2017/08/18 Javascript
Vuex 入门教程
2018/01/10 Javascript
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
angular2 组件之间通过service互相传递的实例
2018/09/30 Javascript
简述pm2常用命令集合及配置文件说明
2019/05/30 Javascript
基于layui table返回的值的多级嵌套的解决方法
2019/09/19 Javascript
vue学习笔记之给组件绑定原生事件操作示例
2020/02/27 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
详解python字节码
2018/02/07 Python
Python零基础入门学习之输入与输出
2019/04/03 Python
Python切片操作去除字符串首尾的空格
2019/04/22 Python
基于多进程中APScheduler重复运行的解决方法
2019/07/22 Python
Python 利用高德地图api实现经纬度与地址的批量转换
2019/08/14 Python
荷兰之家英文站:Holland at Home
2016/10/26 全球购物
英国在线药房:Chemist.co.uk
2019/03/26 全球购物
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
硕士研究生个人求职信
2013/12/04 职场文书
会计专业自我鉴定
2014/02/10 职场文书
销售主管岗位职责范本
2014/02/14 职场文书
副处级干部考察材料
2014/05/17 职场文书
安全宣传标语
2014/06/10 职场文书
2014年教师个人工作总结
2014/11/10 职场文书
小班下学期个人总结
2015/02/12 职场文书
2015年档案室工作总结
2015/05/23 职场文书
2016新年致辞
2015/08/01 职场文书
python实现三阶魔方还原的示例代码
2021/04/28 Python