定义和用法
delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
使用 delegate() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。
语法
$(selector).delegate(childSelector,event,data,function)
参数
描述
childSelector
必需。规定要附加事件处理程序的一个或多个子元素。
event
必需。规定附加到元素的一个或多个事件。
由空格分隔多个事件值。必须是有效的事件。
data
可选。规定传递到函数的额外数据。
function
必需。规定当事件发生时运行的函数。
undelegate() 方法
实例
从所有元素删除由 delegate() 方法添加的所有事件处理器:
$("body").undelegate();
定义和用法
undelegate() 方法删除由 delegate() 方法添加的一个或多个事件处理程序。
语法
$(selector).undelegate(selector,event,function)
参数
描述
selector
可选。规定需要删除事件处理程序的选择器。
event
可选。规定需要删除处理函数的一个或多个事件类型。
function
可选。规定要删除的具体事件处理函数。
亲自试一试 - 实例
如何使用 undelegate() 方法从指定元素删除所有事件处理程序。
如何使用 undelegate() 方法从指定元素删除具体事件类型的所有事件处理程序。
如何使用 undelegate() 方法为事件处理程序删除来自特定事件类型的特定函数。
jQuery 事件 - delegate() 方法