jquery的$.extend和$.fn.extend作用及区别
2015-07-16 15:51
731 查看
文章转自: http://blog.sina.com.cn/s/blog_7c5d61f30101da1k.html
jQuery为开发插件提拱了两个方法,分别是:
jQuery.fn.extend();
jQuery.extend();
虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便。
jQuery便是一个封装得非常好的类,比如我们用 语句 $("#btn1") 会生成一个 jQuery类的实例。
jQuery.extend(object); 为jQuery类添加类方法,可以理解为添加静态方法。如:
结果:
jQuery.fn.extend(object); 对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。
比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。可以这么做:
$.fn.extend({
alertWhileClick:function()
{
$(this).click(function(){
alert($(this).val());
});
}
});
$("#input1").alertWhileClick(); //
页面上为:
$("#input1") 为一个jQuery实例,当它调用成员方法 alertWhileClick后,便实现了扩展,每次被点击时它会先弹出目前编辑里的内容。
jQuery为开发插件提拱了两个方法,分别是:
jQuery.fn.extend();
jQuery.extend();
虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便。
jQuery便是一个封装得非常好的类,比如我们用 语句 $("#btn1") 会生成一个 jQuery类的实例。
jQuery.extend(object); 为jQuery类添加类方法,可以理解为添加静态方法。如:
jQuery.extend({
min: function(a, b) { return a < b ? a : b; },
max: function(a, b) { return a > b ? a : b; }
});
jQuery.min(2,3); // 2 jQuery.max(4,5); // 5ObjectjQuery.extend( target, object1, [objectN])用一个或多个其他对象来扩展一个对象,返回被扩展的对象
var settings = { validate: false, limit: 5, name: "foo" }; var options = { validate: true, name: "bar" }; jQuery.extend(settings, options);
结果:
settings == { validate: true, limit: 5, name: "bar" }
jQuery.fn.extend(object); 对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。
比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。可以这么做:
$.fn.extend({
alertWhileClick:function()
{
$(this).click(function(){
alert($(this).val());
});
}
});
$("#input1").alertWhileClick(); //
页面上为:
$("#input1") 为一个jQuery实例,当它调用成员方法 alertWhileClick后,便实现了扩展,每次被点击时它会先弹出目前编辑里的内容。
相关文章推荐
- jQuery:获取浏览器中的分辨率
- jQuery.fn.xx和$().xx
- 分享一个jQuery的图片预加载插件:QueryLoader2
- jquery返回顶部
- jquery mobile 基本教程
- jQuery UI widget源码解析
- JQuery中国省市区无刷新三级联动查询
- Jquery 获取 radio选中值
- 【JQuery】 ajax 无效的JSON基元
- jQuery切换事件
- 效果超棒的 jQuery 特效
- 15款创建漂亮幻灯片的 jQuery 插件
- jquery显示json数据
- 基于JQuery实现的文本框自动填充功能
- jQuery-鼠标经过显示大图并跟随鼠标效果插件
- 模仿jquery框架源码
- jquery css3动态背景用户登录界面特效
- 模仿jquery框架源码 -生长---跨域访问
- 利用jQuery对无序列表排序
- 模仿jquery框架源码 -成熟---选择器