One thing that I’ve always disliked about the jQuery JavaScript framework is its syntax for adding event listeners to elements. The way to add a click event to an element using jQuery is:

$('#myElement').click(function() {

I love OOP so the above code tells me that a click is being triggered, not that it’s going to add a listener to the element. There’s nothing wrong with jQuery using that syntax; I simply don’t prefer it. What I do when I need to work with jQuery is Moo-ify its syntax when I can. Here’s how you can implement MooTools’ “addEvent” syntax in MooTools.

The jQuery JavaScript

jQuery.fn.addEvent = jQuery.fn.bind;

We add the “addEvent” function to the jQuery.fn object. Pretty simple.

The Usage

$(document).ready(function() {
	$('#myElement').addEvent('click',function(){ alert('w00t'); });

Looks a lot like MooTools, no? If you like jQuery’s syntax of .click() type events, read my post: Implementing jQuery-Like Event Syntax in MooTools