undelegate([sel,[type],fn])

最后更新于:2022-04-01 05:55:58

### 返回值:jQuery undelegate([sel,[type],fn]) ### 概述 删除由 delegate() 方法添加的一个或多个事件处理程序。 ### 参数 #### **selector,[type]**String,String*1.4.2* **selector:**需要删除事件处理程序的选择器。 **type:**需要删除处理函数的一个或多个事件类型。由空格分隔多个事件值。必须是有效的事件。 #### **selector,[type],fn**String,String,Function*V1.4.2* **selector:**需要删除事件处理程序的选择器。 **type:**需要删除处理函数的一个或多个事件类型。由空格分隔多个事件值。必须是有效的事件。 **fn:**要删除的具体事件处理函数。 #### **selector,events**String,String*V1.4.3* **selector:**需要删除事件处理程序的选择器。 **events:**一个或多个事件类型的字符串和函数的数据映射来执行他们。 #### **namespace**String*1.6* **namespace:**一个字符串,其中包含一个命名空间取消绑定的所有事件。 ### 示例 #### 描述: 从p元素删除由 delegate() 方法添加的所有事件处理器: ##### jQuery 代码: ~~~ $("p").undelegate(); ~~~ 从p元素删除由 delegate() 方法添加的所有click事件处理器: ##### jQuery 代码: ~~~ $("p").undelegate( "click" ) ~~~ 从form元素删除由 delegate() 方法添加的".whatever"命名空间: ##### jQuery 代码: ~~~ var foo = function () { //..... }; //用delegate() 方法给click事件增加".whatever"命名空间 $("form").delegate(":button", "click.whatever", foo); $("form").delegate("input[type='text']", "keypress.whatever", foo); // 用undelegate()方法删除delegate()方法增加的".whatever"命名空间 $("form").undelegate(".whatever"); ~~~
';