基于jQuery 的插件开发
谈到jQuery,对于开发人员是再熟悉不过了,从其诞生发展到到目前,一路走来,历经风雨变化十几载,依旧是开发人员使用最广泛、最常用、也是最成熟的js库。但其再成熟也不可能开发出所有的功能,于是乎就用了插件这么一说,用来拓展和补充jQuery 的功能。
插件开发最常用的两种方法:
1. 扩展 jQueyr 对象
jQuery.extend({ "funName" : function(){ } }); 使用方法 $.funName();
或者这样写:
(function($){ $.extend({ "方法名" : function(){ //方法逻辑 } }); })(jQuery); // 这种方式的模式我们可以这样理解 function jq(){ } jq.funName = function(){ } // 如果要使用 funName 是不是这样的 jq.funName();
注意:使用 IIFE 模式(立即执行函数) 的方式开发插件,避免 $ 对象被污染,我们获取 jQuery 对象,然后在 IIFE 中传入过去,使用 $ 来接受
2.扩展 jQueyr 选择器选择出来的对象
jQuery.fn.extend({ "funName" : function(){ } });
使用方法
$("dom").funName();
或者这样写:
(function($){ $.fn.extend({ "方法名" : function(){ //方法逻辑 } }); })(jQuery); // 原理解析 $.fn.extend 我们可以理解为如下方式 function jq(){
} jq.prototype.funName = function(){ }
// 如果我们要使用 funName 是不是这样的方式 jq().funName();
以上拙见,有不对处,望指正,谢谢!