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 使用手册(五)
Sep 23 Javascript
关于文本框的一些限制控制总结~~
Apr 15 Javascript
深入理解JS中的变量及作用域、undefined与null
Mar 04 Javascript
jquery 取子节点及当前节点属性值
Jul 25 Javascript
javascript委托(Delegate)blur和focus用法实例分析
May 26 Javascript
微信扫码支付零云插件版实例详解
Apr 26 Javascript
Vue组件通信之Bus的具体使用
Dec 28 Javascript
vue-router传参用法详解
Jan 19 Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
Mar 29 Javascript
react-native滑动吸顶效果的实现过程
Jun 03 Javascript
解析vue、angular深度作用选择器
Sep 11 Javascript
Vue实例的对象参数options的几个常用选项详解
Nov 08 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
WordPress自定义时间显示格式
2015/03/27 PHP
PHP微信PC二维码登陆的实现思路
2017/07/13 PHP
PHP中的self关键字详解
2019/06/23 PHP
JavaScript Event学习第六章 事件的访问
2010/02/07 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
使用AngularJS 跨站请求如何解决jsonp请求问题
2017/01/16 Javascript
详解javascript立即执行函数表达式IIFE
2017/02/13 Javascript
JavaScript中立即执行函数实例详解
2017/11/04 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
2017/12/19 Javascript
vue结合axios与后端进行ajax交互的方法
2018/07/06 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
2018/09/19 Javascript
VUE+Element环境搭建与安装的方法步骤
2019/01/24 Javascript
Vue数据绑定实例写法
2019/08/06 Javascript
详解elementui之el-image-viewer(图片查看器)
2019/08/30 Javascript
微信小程序:报错(in promise) MiniProgramError
2020/10/30 Javascript
基于vue的video播放器的实现示例
2021/02/19 Vue.js
[04:45]上海特级锦标赛主赛事第三日TOP10
2016/03/05 DOTA
python之import机制详解
2014/07/03 Python
使用python编写简单的小程序编译成exe跑在win10上
2018/01/15 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
2018/04/23 Python
python中绕过反爬虫的方法总结
2020/11/25 Python
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
高校辅导员推荐信范文
2013/12/25 职场文书
电厂厂长岗位职责
2014/01/02 职场文书
广告学专业自荐信范文
2014/02/24 职场文书
入党推优材料
2014/06/02 职场文书
贷款委托书
2014/08/01 职场文书
小学生春游活动方案
2014/08/20 职场文书
赵乐秦在党的群众路线教育实践活动总结大会上的讲话稿
2014/10/25 职场文书
2014年服装销售工作总结
2014/11/27 职场文书
投诉书格式范本
2015/07/02 职场文书
聘任通知书
2015/09/21 职场文书
2016习总书记系列重要讲话心得体会
2016/01/15 职场文书
导游词之神仙居景区
2019/11/15 职场文书
django上传文件的三种方式
2021/04/29 Python
Python基础之数据类型知识汇总
2021/05/18 Python