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插件HighCharts绘制2D饼图效果示例【附demo源码下载】
Mar 21 jQuery
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
Mar 28 jQuery
jQuery EasyUI之验证框validatebox实例详解
Apr 10 jQuery
Vue.js列表渲染绑定jQuery插件的正确姿势
Jun 29 jQuery
关于jQuery.ajax()的jsonp碰上post详解
Jul 02 jQuery
jQuery常用选择器详解
Jul 17 jQuery
jQuery Ajax向服务端传递数组参数值的实例代码
Sep 03 jQuery
jQuery实现基本隐藏与显示效果的方法详解
Sep 05 jQuery
jQuery序列化form表单数据为JSON对象的实现方法
Sep 20 jQuery
jQuery 操作 HTML 元素和属性的方法
Nov 12 jQuery
详解如何使用webpack打包多页jquery项目
Feb 01 jQuery
jQuery实现视频展示效果
May 30 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
MOTOROLA 摩托罗拉 MODEL 66-XI五灯中波收音机
2021/03/02 无线电
php正则校验用户名介绍
2008/07/19 PHP
PHP中session变量的销毁
2014/02/27 PHP
laravel + vue实现的数据统计绘图(今天、7天、30天数据)
2018/07/31 PHP
thinkphp 框架数据库切换实现方法分析
2020/05/18 PHP
HTTP头隐藏PHP版本号实现过程解析
2020/12/09 PHP
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
Jquery实现的简单轮播效果【附实例】
2016/04/19 Javascript
jQuery回到顶部的代码
2016/07/09 Javascript
jQuery内容过滤选择器用法示例
2016/09/09 Javascript
微信小程序 实现拖拽事件监听实例详解
2016/11/16 Javascript
Vuex之理解Mutations的用法实例
2017/04/19 Javascript
React中jquery引用的实现方法
2017/09/12 jQuery
JavaScript生成指定范围的时间列表
2018/03/19 Javascript
详解Node.js读写中文内容文件操作
2018/10/10 Javascript
koa2服务端使用jwt进行鉴权及路由权限分发的流程分析
2019/07/22 Javascript
js单线程的本质 Event Loop解析
2019/10/29 Javascript
JavaScript 空间坐标的使用
2020/08/19 Javascript
vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作
2020/08/28 Javascript
[48:44]2014 DOTA2国际邀请赛中国区预选赛5.21 TongFu VS HGT
2014/05/22 DOTA
仅用50行代码实现一个Python编写的计算器的教程
2015/04/17 Python
在Django中输出matplotlib生成的图片方法
2018/05/24 Python
python用pandas数据加载、存储与文件格式的实例
2018/12/07 Python
selenium在执行phantomjs的API并获取执行结果的方法
2018/12/17 Python
Django实现文件上传下载
2019/10/06 Python
pytorch实现建立自己的数据集(以mnist为例)
2020/01/18 Python
如何基于python实现不邻接植花
2020/05/01 Python
数以千计的折扣工业产品:ESE Direct
2018/05/20 全球购物
银行求职推荐信范文
2013/11/30 职场文书
毕业生找工作的求职信范文
2013/12/24 职场文书
2014年党的群众路线教育实践活动整改措施(个人版)
2014/09/25 职场文书
个人对照检查剖析材料
2014/10/13 职场文书
表扬稿格式范文
2015/01/16 职场文书
创业计划书之网络外卖
2019/10/31 职场文书
python实现学生信息管理系统(面向对象)
2022/06/05 Python