jQuery插件的开发包括两种:
一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法。jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级别的插件开发,即给jQuery对象添加方法。下面就两种函数的开发做详细的说明。
一.类级别插件开发:类级别的插件开发最直接的理解就是给jQuery类添加类方法,可以理解为添加静态方法。典型的例子就是$.AJAX()这个函数,将函数定义于jQuery的命名空间中.
1.添加一个新的全局函数
jQuery.foo=function(){console.log("This is a foo");}//调用方法:jQuery.foo()或$.foo();
2.使用jQuery.extend(object)
jQuery.extend({foo:function(){},bar:function(params){}});
3.使用命名空间
虽然在jQuery命名空间中,我们禁止使用了大量的javaScript函数名和变量名。但是仍然不可避免某些函数或变量名将于其他jQuery插件冲突,因此我们习惯将一些方法封装到另一个自定义的命名空间。
jQuery.myPlugin={foo:function(){},bar:function(){}}//调用方法:$.myPlugin.foo();
二.对象级别插件开发
形式1.(function($){$.fn.extend({foo:function(){}})})(jQuery)
形式2.(function($){$.fn.foo=function(){}})(jQuery)
1.$.fn.hightLight=function(){}//调用方法:$(".div").hightLight()
2.$.fn.hightLight=function(params){var default={forground:'yellow',background:'blue'};var opts=$.extend(default,params);}//调用方法:$(".div").hightLight({forground:'blue'})