jQuery插件的开发包括两种:
一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法。jQuery的全局函数就是属于jQuery命名空间的函数,调用形式:$.fun()
;
另一种是对象级别的插件开发,即给jQuery对象添加方法。调用形式:$('选择器').fun()
。
也可以理解为另外两种方式:
一种是jQuery本身的扩展方法;jQuery.extend(Object);
另一种是jQuery所选对象的扩展方法。jQuery.fn.extent(Object);
下面就对这两种开发做详细的说明:
类级别的插件开发
对类级别的插件开发,我们可以把jQuery看成一个类,给jQuery类添加静态方法,比如$.ajax()
这个函数,将此函数定义在jQuery的命名空间中。
可采用如下几种形式进行开发:
添加一个新的全局函数
1 | $.foo = function(){ |
使用jQuery.extend(object);
1 | $.extend({ |
使用命名空间
1 | $.myPlugin = { |
对象级别的插件开发
html代码:
1 | <p id="demo">Hello World</p> |
形式一
1 | $.fn.foo = function(){ |
形式二
1 | (function($){ |
形式三
1 | (function (jq) { |