Pub / Sub simples com jQuery

/**
* Create an observer pattern for jQuery

* allows you to alias trigger with publish,

* on with subscribe,

* and off with unsubcsribe

* Useful for custom events

*

* USAGE:

* $(el).subscribe('customEvent', function() {

* do something when customEvent is published

*

* No longer need to subscribe to custom event

* $(el).unsubscribe('customEvent');

* });

*

* Custom event is fired

* $.publish('customEvent');

*/


;(function($) {
var o = $({});
$
.each({
trigger
: 'publish',
on
: 'subscribe',
off
: 'unsubscribe'
}, function(key, val) {
jQuery
[val] = function() {
o
[key].apply(o, arguments);
};
});
})(jQuery);