Jquery中的Jquery.extend, Jquery.fn.extend,Jquery.prototype

Jquery中:

1. $是Jquery的简写形式,所以,Jquey()和$()的意思是一样的;所有用$()的地方,$都可以用Jquery代替;

2. 因为不能假定$在任何环境中都是有效的,所以,插件中一般用Jquery定义,而不用$定义;、

3. 用Jquery.extend增加的函数,或者说扩展的函数,可以理解成添加类方法——用类名调用

4. 用Jquery.fn.extend增加的函数,或者说扩展的函数,可以理解成添加对象方法,即添加成员函数,用对象名调用

5. Jquery.fn=Jquery.prototype,所以,Jquery.fn是Jquery.prototype的别名;

6. 那么Jquery.prototype是什么呢? 这个牵涉到Javascript的对象生成过程,以及结构:

    建立Javascript普通对象-》Javascript普通对象的constructor属性指向constructor对象,constructor对象的prototype属性指向

    prototype对象,Javascript普通对象的隐藏属性_proto_指向prototype对象,具体结果图可以参考

    http://yangsp1.javaeye.com/blog/499264

 

7. 以下代码:

    var $jc = $.jcarousel;//$有一个jcarousel属性,该属性也是一个对象(摘自Jcarousel插件),并起别名为$jc

     $jc.fn.extend = $jc.extend = $.extend;// $jc 的对象方法=$jc 的类方法=Jquery的类方法;

                                                                 // 即扩展方法可以使用上面3个方式调用,但意义不同。

8. 代码形式:

    (function($){.....})(Jquery)

    //用上面的函数形式作为包裹器,把代码包含在内部,含义是:

      function($){....}函数定义,有一个形式参数$;

      (function($){....})(Jquery)用Jquery作为实参调用上述函数

      用途:在该函数内部用$不会引起冲突,所以起到包裹器的作用。  

    

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值