jQuery: How to stop propagation of a bound function not the entire event?

Posted by Dale on Stack Overflow See other posts from Stack Overflow or by Dale
Published on 2010-06-04T20:26:21Z Indexed on 2010/06/05 13:32 UTC
Read the original article Hit count: 199

I have a click function bound to many elements. It is possible that sometimes these elements may sit within one another. So, the click event is bound to a child and also bound to its parent. The method is specific to the element clicked. Naturally, because of event bubbling, the child's event is fired first, and then the parents. I cannot have them both called at the same time because the parents event overwrites the event of the child. So I could use event.stopPropagation() so only the first element clicked receives the event. The problem is that there are other click events also attached to the element, for example, I am using jQuery's draggable on these elements. If I stop the propagation of the click event, then draggable doesn't work, and the following click events are not called.

So my question is: Is there a way to stop the event bubbling of the method the event will call and not the entire event?

© Stack Overflow or respective owner

Related posts about JavaScript

Related posts about jQuery