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选择器插件说明,例如使用
(“p: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);
Atas ialah kandungan terperinci 编写jquery自定义插件的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!