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操作之效果详解
May 19 jQuery
jquery dataTable 后台加载数据并分页实例代码
Jun 07 jQuery
jQuery+ajax实现局部刷新的两种方法
Jun 08 jQuery
深入理解jquery的$.extend()、$.fn和$.fn.extend()
Jul 08 jQuery
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery实现简单的下拉菜单导航功能示例
Dec 07 jQuery
jquery获取元素到屏幕四周可视距离的方法
Sep 05 jQuery
jQuery实现鼠标移入移出事件切换功能示例
Sep 06 jQuery
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 jQuery
jQuery实现的记住帐号密码功能完整示例
Aug 03 jQuery
基于ajax及jQuery实现局部刷新过程解析
Sep 12 jQuery
jQuery实现本地存储
Dec 22 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
2.PHP入门
2006/10/09 PHP
PHP生成二维码的两个方法和实例
2014/07/01 PHP
使用 laravel sms 构建短信验证码发送校验功能
2017/11/06 PHP
PHP多维数组排序array详解
2017/11/21 PHP
javascript知识点收藏
2007/02/22 Javascript
jQuery 1.5最新版本的改进细节分析
2011/01/19 Javascript
通过百度地图获取公交线路的站点坐标的js代码
2012/05/11 Javascript
JavaScript实现自己的DOM选择器原理及代码
2013/03/04 Javascript
jquery控制左右箭头滚动图片列表的实例
2013/05/20 Javascript
javascript实现全角与半角字符的转换
2015/01/07 Javascript
javaScript实现滚动新闻的方法
2015/07/30 Javascript
JS实现设置ff与ie元素绝对位置的方法
2016/03/08 Javascript
JS表单验证的代码(常用)
2016/04/08 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
JS读写CSS样式的方法汇总
2016/08/16 Javascript
通过sails和阿里大于实现短信验证
2017/01/04 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
vue.js学习笔记之v-bind和v-on解析
2018/05/03 Javascript
Vue安装浏览器开发工具的步骤详解
2019/05/12 Javascript
Vue项目总结之webpack常规打包优化方案
2019/06/06 Javascript
openlayers实现地图测距测面
2020/09/25 Javascript
浅谈Python 字符串格式化输出(format/printf)
2016/07/21 Python
python监控键盘输入实例代码
2018/02/09 Python
python自动化生成IOS的图标
2018/11/13 Python
Python爬虫:url中带字典列表参数的编码转换方法
2019/08/21 Python
Tensorflow实现部分参数梯度更新操作
2020/01/23 Python
Python基础之列表常见操作经典实例详解
2020/02/26 Python
通过cmd进入python的步骤
2020/06/16 Python
美国眼镜网站:EyeBuyDirect
2017/04/13 全球购物
NIHAOMARKET官方海外旗舰店:意大利你好华人超市
2018/01/27 全球购物
官方授权图形T恤和服装:Fifth Sun
2019/06/12 全球购物
医药大学生求职简历的自我评价
2013/10/17 职场文书
财务会计实习报告体会
2013/12/20 职场文书
新手上路标语
2014/06/20 职场文书
「玫瑰之王的葬礼」舞台剧主视觉图公开
2022/03/21 日漫