To listen events on elements, I think to listen on document level:
$(document).on('click', '.myclass', function() {/*do something*/});
is better than the style to listen on element level:
$('.myclass').on('click', function() { /*do something*/ });
The reason is the first style could apply to dynamically added new elements as well. You can also see this style used a lot in Bootstrap: https://github.com/twitter/bootstrap/blob/master/js/bootstrap-alert.js
I would like to use the first style extensively. But I wonder if there are any drawbacks of this style, say performance?