A small library with utilities for class based JavaScript programming
varDOMReady=nova.Class({initialize: function(){$($.proxy(this.domReady,this));},domReady: function(){}});varCustomEvents=nova.Class({addEvent: function(ev,fn){this.events=this.events||{};this.events[ev]=this.events[ev]||[];this.events[ev].push(fn);},trigger: function(ev,args){if(this.events&&this.events[ev]){varevents=this.events[ev],i,l=events.length;for(;i<l;i++){events[i].apply(null,args);};}}});varContextSelector=nova.Class({$: function(selector){return$(selector,this.el);}});varElementView=nova.Class({extend: DOMReady,implement: [CustomEvents,ContextSelector]});varProductDetail=ElementView.extend({domReady: function(){this.el=$('body');this.changeColor();},changeColor: function(){this.$('p').css('color','red');}})varproduct=newProductDetail();