举报投诉联系我们 手机版 热门标签 鳄鱼CMS
您的位置:鳄鱼CMS > jquery delegate jQuery undelegate() 方法

jquery delegate jQuery undelegate() 方法

2023-03-21 13:31 jQuery教程

jquery delegate jQuery undelegate() 方法

jquery delegate

jQuery 的 delegate() 方法允许开发者在一个元素上绑定事件处理函数,而不是在每个子元素上绑定。这样可以减少内存占用,提高性能。

delegate() 方法的语法如下:

$(selector).delegate(childSelector, eventType, handler);

其中,selector 是要委托的元素;childSelector 是要委托的子元素;eventType 是要委托的事件类型;handler 是事件处理函数。

例如,我们有一个 div 元素,里面有三个 a 元素。我们想要在这三个 a 元素上都添加 click 事件处理函数。我们可以使用 delegate() 方法来实现这一目标:

$('div').delegate('a', 'click', function(){  // do something });

当用户单击 div 中的 a 元素时,就会触发 click 事件处理函数。这样就不必在每个 a 元素上都添加 click 事件处理函数了。

此外,delegate() 还有一个重载版本:

$(selector).delegate(childSelector, eventType, data, handler); 

该版本和前面的版本基本相同,只是多了一个 data 参数。data 参数是一个对象,会作为参数传递到 handler 中去。handler 的语法如下所示:

(eventObject, data) { // do something } 





jQuery undelegate() 方法

jQuery undelegate() 方法

jQuery 事件方法 jQuery 事件方法

实例

通过 delegate() 方法从所有元素移除所有事件处理程序:

$("body").undelegate();


定义和用法

undelegate() 方法移除一个或多个由 delegate() 方法添加的事件处理程序。

自 jQuery 版本 1.7 起,on() 和 off() 方法是添加和移除元素上的事件处理程序的首选方法。


语法

 $(selector).undelegate(selector,event,function) 

参数 描述
selector 可选。规定需要删除事件处理程序的选择器。
event 可选。规定需要删除处理函数的一个或多个事件类型。
function 可选。规定要删除的具体事件处理函数。


实例

更多实例

移除所有 click 事件处理程序
如何使用 undelegate() 方法来移除所有 <p> 元素上的 click 事件处理程序。

移除由 delegate() 添加的指定函数
如何使用 undelegate() 方法只移除指定函数。


jQuery 事件方法 jQuery 事件方法


阅读全文
以上是鳄鱼CMS为你收集整理的jquery delegate jQuery undelegate() 方法全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 鳄鱼CMS eyucms.com 版权所有 联系我们