zoukankan      html  css  js  c++  java
  • off(events,[selector],[fn]) 在选择元素上移除一个或多个事件的事件处理函数。

    off(events,[selector],[fn])

    概述

    在选择元素上移除一个或多个事件的事件处理函数。

    off() 方法移除用.on()绑定的事件处理程序。有关详细信息,请参阅该网页上delegated和directly绑定事件。特定的事件处理程序可以被移除元素上提供事件的名称,命名空间,选择器,或处理函数名称的组合。当有多个过滤参数,所提供的参数都必须匹配的事件处理程序被删除。

    如果一个简单的事件名称,比如提供"click",所有 这种类型的事件(包括直接和委派)从jQuery设置的元素上删除。当编写代码,将作为一个插件使用,或者干脆当一个大的代码基础工作,最好的做法是安装和取下使用命名空间的事件,从而使代码不会无意中删除其他代码附加事件处理程序。在一个特定的命名空间中的所有类型的所有事件,可以从一个元素中删除,只是提供了一个命名空间,比如 ".myPlugin"。至少,无论是命名空间或事件名称必须提供。

    要删除特定的委派事件处理程序,提供一个selector 的参数。选择器字符串必须是完全匹配递到.on()事件处理程序附加的选择器。要删除非委托元素上的所有事件,使用特殊值 "**" 。

    处理程序也可以删除handler参数指定名称的函数。当jQuery的绑定一个事件处理程序,它分配一个唯一的ID给处理函数。函数用jQuery.proxy()代理或类似有相同的唯一ID机制(代理函数),因此,通过代理处理程序.off 可能会删除比预期更多的处理程序。在这些情况下,最好是附加和移除事件处理程序,使用命名空间。大理石平台生产厂

    和.on()一样,你可以传递一个 events-map>参数明确的指定而不是用events 和 handler作为单独参数。键事件和/或命名空间;值是处理函数或为false的特殊价值。

    参数

    events,[selector],[fn]V1.7

    events:一个或多个空格分隔的事件类型和可选的命名空间,或仅仅是命名空间,比如"click", "keydown.myPlugin", 或者 ".myPlugin".

    selector:一个最初传递到.on()事件处理程序附加的选择器。

    fn:事件处理程序函数以前附加事件上,或特殊值false.

    events-map,[selector]V1.7

    events-map:一个用字符串表示的,一个或多个空格分隔的事件类型和可选的命名空间,值表示先前事件绑定的处理函数。

    selector:一个最初传递到.on()事件处理程序附加的选择器。

    示例

    描述:

    Remove all event handlers from all paragraphs:

    $("p").off()

    Remove all delegated click handlers from all paragraphs:

    $("p").off( "click", "**" )

    Remove just one previously bound handler by passing it as the third argument:

    var foo = function () {
      // code to handle some kind of event
    };
    
    // ... now foo will be called when paragraphs are clicked ...
    $("body").on("click", "p", foo);
    
    
    // ... foo will no longer be called.
    $("body").off("click", "p", foo); 

    Unbind all delegated event handlers by their namespace:

    var validate = function () {
      // code to validate form entries
    };
    
    // delegate events under the ".validator" namespace
    $("form").on("click.validator", "button", validate);
    
    $("form").on("keypress.validator", "input[type='text']", validate); 
    
    // remove event handlers in the ".validator" namespace
    
    $("form").off(".validator");
  • 相关阅读:
    Mysql中类型转换函数Cast()的用法
    Spark scala 删除指定列为Na的行
    R语言之变量动态赋值
    MAC 把隔空投送添加到个人收藏边栏
    R查看变量数据类型 typeof()
    R Rstudio生成HTML报告
    Rstudio 添加定时任务
    R Studio编译一个包package
    Linux sed删除文件后几行
    Github添加自我介绍-新建一个和用户名同名的仓库并添加README.md即可
  • 原文地址:https://www.cnblogs.com/furuihua/p/12018138.html
Copyright © 2011-2022 走看看