• [雷人]中国人啥不炒?古董、字画、票证、君子兰、普洱茶、大蒜……凡是有较长保存时间的东西,都有人炒! 2019-07-16
  • 乌兰察布--内蒙古频道--人民网 2019-07-16
  • 新版人民网首页吉林IP定向--吉林频道--人民网 2019-07-14
  • 儿子变全能暖男 海清晒儿子手工包礼物爱意满满 2019-07-14
  • 王秀英受邪教全能神蛊惑离家出走 家人盼归 2019-07-13
  • 山西日报传媒集团公司 2018年第一季度财务等重大信息 2019-07-13
  • 辽宁日报社社长、总编辑丁宗皓祝贺人民日报创刊70周年 2019-07-12
  • 出租广州市番禺区大龙街东兴路476号4楼物业空置部分 2019-07-11
  • 芜湖乡间小路上演“警匪片” 警车狂追小轿车 2019-07-09
  • 个税法迎第七次大修 起征点调至每年6万元 2019-07-09
  • 商务部新闻发言人就美白宫6月18日声明发表谈话 2019-07-06
  • 弘扬优秀传统文化 引领文化自信 绍兴打造国学高地 2019-07-06
  • 王国平理事长应邀赴泰州市调研并作专题报告 2019-07-02
  • 人民日报大家手笔:建设文化强国应科学处理三种关系 2019-07-01
  • 北京外研书店重装开业 打造特色海淀文化地标 2019-07-01
  • Jquery中文网 码报 www.okkrb.tw
    Jquery中文网 >  jQuery  >  jquery 教程  >  正文 jQuery 事件的命名空间

    码报001期码生肖:jQuery 事件的命名空间

    发布时间:2016-09-18   编辑:码报 www.okkrb.tw
    jquery中文网为您提供jQuery 事件的命名空间等资源,欢迎您收藏本站,我们将为您提供最新的jQuery 事件的命名空间资源

    码报 www.okkrb.tw 用 jquery 绑定和解绑事件监听器都是非常简单的。但是当你为一个元素的一个事件绑定了多个监听器时,怎样精确地解绑其中一个监听器?我们需要了解一下事件的命名空间。

    看下面这段代码:

    $(“#element”)
        .on(“click”, doSomething)
        .on(“click”, doSomethingElse);
    

    像上面这样绑定事件监听器,当元素被点击时,doSomethingdoSomethingElse 这两个监听器都会被触发。这是使用 jQuery 的一个便利之处,可以随时给元素的同一个事件添加不同的监听器。不像用 onclick 那样,新的监听器会覆盖旧的。

    如果你想解绑其中一个监听器,比如 doSomething,怎么做呢?

    是这样吗?

    $(“#element”).off(“click”);
    

    注意!上面这行代码会把元素的 click 事件的所有监听器全部解绑,而这并不是我们要的结果。

    幸运的是 jQuery 的 .off() 方法可以接受第二个参数,就像 .on() 一样。只要把监听器函数的名字作为第二个参数传入 .off() 方法,就能够解绑指定的监听器。

    $(“#element”).off(“click”, doSomething);
    

    但是如果你不知道这个函数的名字,或者你用的是匿名函数:

    $(“#element”)
        .on(“click”, function() {
            console.log(“doSomething”);
        });
    

    怎样才能精确地解绑某一个 click 事件监听器呢?该了解一下 jQuery 的事件命名空间了!

    先上代码:

    $(“#element”)
        .on(“click.myNamespace”, function() {
            console.log(“doSomething”);
        });
    

    这里不只是把 click 事件作为参数传入 .on() 方法,而是给 click 事件指定了一个命名空间,然后监听了这个命名空间里的 click 事件。此时,即使监听器是匿名函数,实际上它也是“有名”的了。现在你可以像下面这样解绑某一个具体的命名空间里的事件监听器了。

    $(“#element”).off(“click.myNamespace”);
    

    这是 jQuery 为我们提供的又一个方便而强大的功能,它的内部实现肯定很有意思!

    编译自:CSS-Tricks

    您可能感兴趣的文章:
    jQuery中绑定事件的命名空间详解
    jQuery 事件的命名空间简单了解
    jQuery bind事件使用详解
    jQuery学习笔记之jQuery的事件
    读jQuery之十二 删除事件核心方法
    使用jQuery全局事件ajaxStart为特定请求实现提示效果的代码
    JQuery自定义事件的应用 JQuery最佳实践
    DB2实验教程:创建数据库/表空间
    jQuery编写widget的一些技巧分享
    锋利的jQuery 要点归纳(三) jQuery中的事件和动画(上:事件篇)

    [关闭]
  • [雷人]中国人啥不炒?古董、字画、票证、君子兰、普洱茶、大蒜……凡是有较长保存时间的东西,都有人炒! 2019-07-16
  • 乌兰察布--内蒙古频道--人民网 2019-07-16
  • 新版人民网首页吉林IP定向--吉林频道--人民网 2019-07-14
  • 儿子变全能暖男 海清晒儿子手工包礼物爱意满满 2019-07-14
  • 王秀英受邪教全能神蛊惑离家出走 家人盼归 2019-07-13
  • 山西日报传媒集团公司 2018年第一季度财务等重大信息 2019-07-13
  • 辽宁日报社社长、总编辑丁宗皓祝贺人民日报创刊70周年 2019-07-12
  • 出租广州市番禺区大龙街东兴路476号4楼物业空置部分 2019-07-11
  • 芜湖乡间小路上演“警匪片” 警车狂追小轿车 2019-07-09
  • 个税法迎第七次大修 起征点调至每年6万元 2019-07-09
  • 商务部新闻发言人就美白宫6月18日声明发表谈话 2019-07-06
  • 弘扬优秀传统文化 引领文化自信 绍兴打造国学高地 2019-07-06
  • 王国平理事长应邀赴泰州市调研并作专题报告 2019-07-02
  • 人民日报大家手笔:建设文化强国应科学处理三种关系 2019-07-01
  • 北京外研书店重装开业 打造特色海淀文化地标 2019-07-01
  • 重庆麻将机维修 世俱杯阿尔艾因对河床 好球官网 中国福利彩票走势图表 腾讯天龙八部手游 山西麻将app 巴黎对斯特拉斯堡 比利亚雷亚尔对巴萨阵容 四川金7乐开奖号 球球大作战闯关