编写jquery 自定义插件

来源:互联网 发布:linux设置ftp用户权限 编辑:程序博客网 时间:2024/04/28 15:12

编写jquery插件是对已有的一些函数进行封装,达到重复利用的目的

JQuery的插件主要有三种:

1. 封装对象方法的插件
编写此类插件需要用JQuery提供的jQuery.fn.extend()方法。实现查询color的自定义函数步骤如下
1.1 将编写的插件文件命名为 jquery.color.js
1.2 编写插件的内容

;(function($){    jQuery.fn.extend({//这里也可以写成$.fn.extend        "color":function(value){//value是颜色值            return this.css("color",value);        },        "border":function(value){            //插入代码        }    });})(jQuery);

2. 封装全局函数的插件
这类插件是在jQuery命名空间内部添加函数。编写此类插件需要用JQuery提供的jQuery.extend()方法。编写一个实现去掉字符串左边空格的函数

;(function($){    $.extend({        ltrim:function(text){//需要去除空格的字符串            return (text || "").replace(/^\s+/g, "");        },        rtrim:function(text){            return (text || "").replace(/\s+$/g, "");        }    });})(jQuery);

于是就可以通过$.rtrim(” test “) 或者jQuery.ltrim(” test “); 来返回去除空格的字符串。功能类似于jQuery的trim()函数。

3. 选择器插件
以编写between选择器插件说明,例如使用(div:between(2,5))343.1jQuery(“div:gt(1)”)为例子讲解
:gt()选择器在jQuery中源码为

gt:function(a,i,m){    return i > m[3]-0;}

其中
a 指向当前遍历到的DOM元素。
i 表示当前遍历到的DOM元素的索引值
m 是一个特殊数组。
m[0] = :gt(1) 要解析的表达式
m[1] = :
m[2] = gt
m[3] = 1

由此参考编写此选择器代码为

;(function($){    $.extend(jQuery.expr[":"], {        between : function(a, i, m){            var tmp = m[3].split(",");//m[3]值为[2,5];            return tmp[0]-0 < i && i < tmp[1]-0;        }    });})(jQuery);
原创粉丝点击