jquery扩展方法

简介:

jquery插件的开发包括两种:一种是类级别的插件开发,即给jquery添加新的全局函数,相当于给jquery类本身添加方法。

jquery的全局函数就是属于jquery命名空间的函数,另一种是对象级别的插件开发,即给jQuery对象添加方法。

也可以理解为另外两种方式,一种是jQuery本身的扩展方法,另一种是jQuery所选对象的扩展方法。

1.jQuery.extend(Object);   // jQuery 本身的扩展方法 

2.jQuery.fn.extent(Object);    // jQuery 所选对象扩展方法

下面就两种函数的开发做详细的说明。


1、类级别的插件开发

类级别的插件开发最直接的理解就是给jQuery类添加类方法,

可以理解为添加静态方法。典型的例子就是$.AJAX()这个函数,将函数定义于jQuery的命名空间中。

关于类级别的插件开发可以采用如下几种形式进行扩展:

1.1 添加一个新的全局函数


[javascript] view plain copy

  1. $.foo = function(){  

  2.             alert("foo");  

  3.         }  

  4.         //调用方法   

  5.         $.foo();  

1.2 使用jQuery.extend(object);

[javascript] view plain copy

  1. $.extend({  

  2.             foo:function(){  

  3.                 alert("foo");  

  4.             },  

  5.             bar:function(){  

  6.                 alert("bar");  

  7.             }  

  8.         })  

  9.         //调用方法   

  10.         $.foo();  

  11.         $.bar();  

1.3 使用命名空间

[javascript] view plain copy

  1. $.myPlugin = {  

  2.             foo:function(){  

  3.                 alert("foo");  

  4.             },  

  5.             bar:function(){  

  6.                 alert("bar");  

  7.             }  

  8.         }  

  9.         //调用方法  

  10.         $.myPlugin.foo();  

  11.         $.myPlugin.bar();   


2、对象级别的插件开发



[javascript] view plain copy

  1. $.fn.foo = function(){  

  2.             alert("hello jquery");  

  3.         }  

  4.         $('#myF').foo()  

[javascript] view plain copy

  1. (function($){     

  2.             $.fn.extend({     

  3.                 pluginName:function(opt,callback){     

  4.                     alert("foo");     

  5.                 }     

  6.             })     

  7.         })(jQuery);    

  8.         $("#myF").pluginName();  

[javascript] view plain copy

  1. (function (jq) {   

  2.             jq.fn.foo = function (obj) {   

  3.                 alert(obj);  

  4.             };   

  5.         })(jQuery)   

  6.         $("#myF").foo("hello jquery");  

本文转自  陈小龙哈   51CTO博客,原文链接:http://blog.51cto.com/chenxiaolong/1752961
相关文章
|
JavaScript
表单验证Jquery扩展方法类
/** 表单数据验证 **/ $.fn.Validform = function () { var Validatemsg = ""; var Validateflag = true; $(this).
1260 0
|
JavaScript 前端开发 数据格式
为Jquery类和Jquery对象扩展方法
jquery.fn.extend与jquery.extend jQuery为开发插件提拱了两个方法,分别是: JavaScript代码 jQuery.fn.extend(object);    jQuery.extend(object);    jQuery.extend(object); 为扩展jQuery类本身.为类添加新的方法。
817 0
|
4天前
|
JavaScript 前端开发
jQuery和CSS3滑动展开菜单按钮插件
这是一款jQuery和CSS3滑动展开菜单按钮插件。该滑动展开菜单按钮在用户点击主菜单按钮之后,子菜单以滑动的方式依次展开
39 21
|
5天前
|
JavaScript
jquery图片和pdf文件预览插件
EZView.js是一款jquery图片和pdf文件预览插件。EZView.js可以为图片和pdf格式文件生成在线预览效果。支持的文件格式有pdf、jpg、 png、jpeg、gif。
36 16
|
3天前
|
移动开发 JavaScript 前端开发
简单易用的jquery响应式轮播图插件ma5slider
ma5slider是一款简单易用的jquery响应式轮播图插件。该轮播图支持鼠标拖拽,可以通过CSS定制外观,支持无限循环模式,内置水平,垂直和淡入淡出三种轮播图过渡动画效果。
|
5天前
|
JavaScript
简洁实用的jQuery进度条插件
这是一款简洁实用的jQuery进度条插件。该插件使用简单,通过在页面中放置指定的HTML代码,即可生成带动画效果的进度条。