泡泡自定义事件

时间:2013-01-14 10:23:36

标签: javascript jquery

事件只会冒泡,但有时需要在父元素上触发自定义事件,并且如果它们有一个绑定到它们的侦听器,则使其调用其任何子元素上的所有处理程序。在jQuery中执行此操作的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

到目前为止,我想出了这个:

$(startingParentElement).addBack().find('*').each(function(index,element){ 
    $(element).triggerHandler('myCustomEventName');
});
  • triggerHandler() 确保事件不会重新冒泡
  • 需要每个(),因为 triggerHandler()仅对匹配集合中的第一个项目执行
  • addBack() 确保调用绑定到 startingParentElement 的处理程序