Binding events is one of the most common tasks a JavaScript developer has to do. It's integral to the way our applications handle user interaction and response. Since it's inception, jQuery has had event handling via various helper methods that helped to abstract cross-browser differences. If you're a jQuery developer, I'm sure you're used to syntax like this:

[code lang="js"]
$(&quot;#clname&quot;).click( function() { alert( &quot;Rey&quot; ) } );
[/code]

which would bind a click event to a DOM element with an ID of "clname". Very easy to understanding and simple to use. But when you get past just simple use of JavaScript and start inserting new DOM nodes, this binding becomes less useful because it can't handle dynamically inserted elements. Let me explain.

Say you have the following HTML markup:

[code lang="html"]
&lt;div id=&quot;clcontainer&quot;&gt;
&lt;a href=&quot;#&quot; class=&quot;clients&quot;&gt;Click for Rey Information&lt;/a&gt;
&lt;/div&gt;
[/code]
