jQuery插件开发小结

jQuery插件开发规范

1. 使用闭包

(function($) {
  // Code goes here
})(jQuery);
这是来自jQuery官方的插件开发规范要求,使用这种编写方式有什么好处呢?
      a) 避免全局依赖。
      b) 避免第三方破坏。
      c) 兼容jQuery操作符'$'和'jQuery '。

2. 扩展

jQuery提供了2个供用户扩展的‘基类’ - $.extend和$.fn.extend.
$.extend 用于扩展自身方法,如$.ajax, $.getJSON等;
$.fn.extend则是用于扩展jQuery类,包括方法和对jQuery对象的操作。
为了保持jQuery的完整性,趋向于使用$.fn.extend进行插件开发而尽量少使用$.extend.

demo.js

;(function($){ //“;”是为了避免代码合并等不必要的错误
 
    $.fn.demo=function(options){
        //使用对象的形式
        var defaults={ //默认参数 
            color:'green'
        }
               // 将用户传进来的参数扩展覆盖默认参数
        var options=$.extend({},defaults,options); //{}主要是为了创建一个新对象,保留对象的默认值
               // 功能实现
        this.each(function(){ //支持jQuery选择器
            $(this).css('background',options.color);
        });
        return this; //使之能够链式操作
    }
 
})(jQuery);

demo.html

       ...
    <title>demo</title>
    <script src="jquery.js"></script>
    <script src="demo.js"></script>  //载入插件文件
        ...
 
    <div id="div1">
        demo
    <script>
        $("#div1").demo({    //调用方式
            color:'black'   //如果用户不传递参数就使用默认参数
        });
    </script>
    </div>
        ...

备注: 官方推荐插件的命名标准写法是jquery.demo.v1.0.js或者jquery-demo-v1.0.js(jquery.插件名.版本号.js);


类级别的插件开发

1、直接给jQuery添加静态函数

jQuery.demo=function(){
    //功能代码
}
 
//调用方式:
$.demo();

2、使用extend()方法

jQuery.extend({
    demo1:function(){
        //功能代码
    }
    demo2:function(){
        //功能代码
    }
});
 
// 调用方式:
$.demo1();
$.demo2();

3、使用命名空间

jQuery.kongjian={
    demo:function(){
 
    }
}
 
// 调用方式:
$.kongjian.demo();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值