首頁  >  事件  > undelegate([s,[t],fn])

返回值:jQuery undelegate([selector,[type],fn])

jQuery undelegate() 方法概述

刪除由 delegate() 方法添加的一個(gè)或多個(gè)事件處理程序。

jQuery 3.0中已棄用此方法,請(qǐng)用 off()代替。

參數(shù)

selector,[type]String,String1.4.2

selector:需要?jiǎng)h除事件處理程序的選擇器。

type:需要?jiǎng)h除處理函數(shù)的一個(gè)或多個(gè)事件類型。 由空格分隔多個(gè)事件值。必須是有效的事件。

selector,[type],fnString,String,FunctionV1.4.2

selector:需要?jiǎng)h除事件處理程序的選擇器。

type:需要?jiǎng)h除處理函數(shù)的一個(gè)或多個(gè)事件類型。 由空格分隔多個(gè)事件值。必須是有效的事件。

fn:要?jiǎng)h除的具體事件處理函數(shù)。

selector,eventsString,StringV1.4.3

selector:需要?jiǎng)h除事件處理程序的選擇器。

events:一個(gè)或多個(gè)事件類型的字符串和函數(shù)的數(shù)據(jù)映射來執(zhí)行他們。

namespaceString1.6

namespace:一個(gè)字符串,其中包含一個(gè)命名空間取消綁定的所有事件。

示例

描述:

從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");