"Event handling" means to handle an event, in whatever way you choose.
"Event delegation" is a special kind of event handling, in which an event handler of the parent of an element handles events for that element. There's no difference to regular event handling, it just explicitly describes the case where you let events bubble up to be handled at another element than the original target.
This would look like this in practice:
<div id="foo">
<a href="#">Bar</a>
</div>
The event handler would be attached to div#foo
and catch all, for example, click
events. When the event handler catches such an event, it inspects event.target
to see if the event originated from a desired source, for example an a
element. If it did, it does something, otherwise it ignores the event. That would be an example of the parent (div#foo
) handling click
events as the delegate of a
. div#foo
handles events triggered by its child a
. a
delegates the event handling to div#foo
, it does not handle them itself.
Note that when I say "a
handles an event", this is less-confusing shorthand for "an event handler attached to a
handles the event". :)