function fadeOffSubsection(section,area) { // etc } $eq=EventQueue.getInstance(); $eq.addEvent({fn:Delegate.create(this,fadeOffSubsection), area:_loc, section:_current}); // ---------- EventQueue Class --------------- .. .. public function addEvent(eventObj) { //trace("adding " + eventObj); _q.push(eventObj); } private function processQueue() { var $event:Object = _q[0]; var fn:Function=$event["fn"]; var area=$event["area"]; var sec=$event["section"]; trace(fn+","+area+","+sec); if(sec!=undefined) { fn.apply(this,[sec,area]); } else { fn.apply(this,[area]); } }