jquery的extend和fn.extend的使用说明


Posted in Javascript onJanuary 09, 2011

jQuery为开发插件提拱了两个方法,分别是:

jQuery.fn.extend(object); 
jQuery.extend(object);

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

fn 是什么东西呢。查看jQuery代码,就不难发现。

jQuery.fn = jQuery.prototype = { 
 init: function( selector, context ) {//....  

 //...... 
};

原来 jQuery.fn = jQuery.prototype.对prototype肯定不会陌生啦。

虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便。
jQuery便是一个封装得非常好的类,比如我们用 语句 $("#btn1") 会生成一个 jQuery类的实例。

jQuery.extend(object); 为jQuery类添加添加类方法,可以理解为添加静态方法。如:

$.extend({ 
add:function(a,b){return a+b;} 
});

便为 jQuery 添加一个为 add 的 “静态方法”,之后便可以在引入 jQuery 的地方,使用这个方法了,
$.add(3,4); //return 7

jQuery.fn.extend(object); 对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。
比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。可以这么做:

$.fn.extend({ 
alertWhileClick:function(){ 
$(this).click(function(){ 
alert($(this).val()); 
}); 
} 
}); 
$("#input1").alertWhileClick(); //页面上为:<input id="input1" type="text"/>
Javascript 相关文章推荐
jQuery中slideUp()方法用法分析
Dec 24 Javascript
javaScript实现滚动新闻的方法
Jul 30 Javascript
JS实现光滑展开合拢的菜单效果代码
Sep 16 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
Nov 02 Javascript
五种js判断是否为整数类型方式
Dec 03 Javascript
巧用jQuery选择器提高写表单效率的方法
Aug 19 Javascript
拖动时防止选中
Feb 03 Javascript
BootStrap daterangepicker 双日历控件
Jun 02 Javascript
vue实现axios图片上传功能
Aug 20 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
Sep 16 Javascript
vue解决花括号数据绑定不成功的问题
Oct 30 Javascript
JS实现扫雷项目总结
May 19 Javascript
js对象之JS入门之Array对象操作小结
Jan 09 #Javascript
理解JavaScript中的对象 推荐
Jan 09 #Javascript
最佳JS代码编写的14条技巧
Jan 09 #Javascript
JavaScript定义类或函数的几种方式小结
Jan 09 #Javascript
javascript中用星号表示预录入内容的实现代码
Jan 08 #Javascript
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
Jan 08 #Javascript
js中top、clientTop、scrollTop、offsetTop的区别 文字详细说明版
Jan 08 #Javascript
You might like
php的一些小问题
2010/07/03 PHP
php中将地址生成迅雷快车旋风链接的代码[测试通过]
2011/04/20 PHP
php堆排序实现原理与应用方法
2015/01/03 PHP
php+ajax实时刷新简单实例
2015/02/25 PHP
基于PHP实现短信验证码接口(容联运通讯)
2016/09/06 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
Ajax+PHP实现的模拟进度条功能示例
2019/02/11 PHP
Auntion-TableSort国人写的一个javascript表格排序的东西
2007/11/12 Javascript
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
2009/12/09 Javascript
ajax 缓存 问题 requestheader
2010/08/01 Javascript
将json对象转换为字符串的方法
2014/02/20 Javascript
jQuery获得页面元素的绝对/相对位置即绝对X,Y坐标
2014/03/06 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
2017/02/18 Javascript
Bootstrap免费字体和图标网站(值得收藏)
2017/03/16 Javascript
基于javaScript的this指向总结
2017/07/22 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
解析Vue.js中的组件
2018/02/02 Javascript
angular5 子组件监听父组件传入值的变化方法
2018/09/30 Javascript
如何去除富文本中的html标签及vue、react、微信小程序中的过滤器
2018/11/21 Javascript
React 使用recharts实现散点地图的示例代码
2018/12/07 Javascript
vue全局自定义指令-元素拖拽的实现代码
2019/04/14 Javascript
JS代码屏蔽F12,右键,粘贴,复制,剪切,选中,操作实例
2019/09/17 Javascript
vue模块移动组件的实现示例
2020/05/20 Javascript
利用python画出折线图
2018/07/26 Python
python 命令行传入参数实现解析
2019/08/30 Python
解决python图像处理图像赋值后变为白色的问题
2020/06/04 Python
html5+css如何实现中间大两头小的轮播效果
2018/12/06 HTML / CSS
怎样在程序里获得一个空指针
2015/01/24 面试题
公务员平时考核实施方案
2014/03/11 职场文书
年度考核自我鉴定
2014/03/19 职场文书
中餐厅经理岗位职责
2014/04/11 职场文书
洗手间标语
2014/06/23 职场文书
房屋租赁合同解除协议书
2014/10/11 职场文书
省委召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
2014年维稳工作总结
2014/11/18 职场文书
新学期新寄语,献给新生们!
2019/11/15 职场文书