jquery揭秘

jQuery.extend()

**描述: **将两个或更多对象的内容合并到第一个对象。

方法 描述
$.extend({}, {a:1,b:2}, {a:10,b:20}) 1.{} 传递空的对象
2. {a:1,b:2}传递对象默认值
3.{a:10,b:20}能替换第二个默认值参数

$.extend(1,2,3)方法,在没有传递第三个参数的情况下会返回第二个默认对象,传递了第三个值会替换第二个对象。这样能解决默认参数的问题。

传递默认值

var object = $.extend({}, {a:1,b:2});
//Object {a: 1, b: 2}

传递替换默认值

var object = $.extend({}, {a:1,b:2}, {a:10,b:20});
//Object {a: 10, b: 20}

jQuery.proxy() 实用工具

**描述: ** 通过jQuery.proxy() 实用工具改变this指向

方法 描述
$.proxy(opi.c,opi) 1.调用方法
2.this指向

在没使用前如果调用方法是事件对象,那么函数原型链上的this是无法指向这个构造函数本身的,this会指向事件按钮本身

<button id="bnt">按钮</button>
<script type="text/javascript">
    function oppo(){
        this.x=1
    }
    oppo.prototype.c=function(){
        console.log(this)
        return this.x*10
    }
    var opi=new oppo()

    $(function(){
        $("#bnt").on('click',opi.c)
    })
</script>
Paste_Image.png

使用$.proxy(opi.c,opi)方法第一个参数传入方法第二个传入构造器本身也就是将this指向了构造器。

<button id="bnt">按钮</button>
<script type="text/javascript">
    function oppo(){
        this.x=1
    }
    oppo.prototype.c=function(){
        console.log(this)
        return this.x*10
    }
    var opi=new oppo()

    $(function(){
        $("#bnt").on('click',$.proxy(opi.c,opi))
    })
</script>
Paste_Image.png

if(!this.$el.is(':animated'))

**描述: ** 判断元素是否在执行中

如果正在运动,返回true,只有不在运动的时候返回false

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,290评论 0 1
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,530评论 0 2
  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    前端进阶之旅阅读 115,665评论 24 450
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,833评论 19 139
  • 原文链接 http://blog.poetries.top/2016/10/20/review-jQuery 关注...
    前端进阶之旅阅读 16,979评论 18 503

友情链接更多精彩内容