var eventTriggerDelay={
	
	aEventObjects:[],
	oEventTrigger:"",
	cAnchorFunct:"",
	cAnchorFunctOut:"",
	nDelayTime:750,
	nDelayTimeReload:200,
	cOpenElement:"",
	
	
/***********************************************************************************************************************************************
********************************************************** Class Constructor  *****************************************************************/

	eventTriggerDelayConstructor:function(){
		this.setChildElementsEvents();
	},
	
	eventTriggerDelayReload:function(cDivId,nDelayTimeLocal){

		if(nDelayTimeLocal!=undefined){
			this.setChildElementsEvents(cDivId,nDelayTimeLocal);
			
		}else{
			this.setChildElementsEvents(cDivId);
		}
	},
/***********************************************************************************************************************************************
********************************************************** Create DelayFunction And onMouseOut Event ******************************************/

	setEventTriggerDelay:function(cAnchorFunction,nDelayTime,cAnchorId){

		var elm=document.getElementById(cAnchorId);

		eventTriggerDelay.oEventTrigger=setTimeout(cAnchorFunction,nDelayTime);			
	},	
	
/***********************************************************************************************************************************************
********************************************************** Set OnMouseover Function For Child Elements  ***************************************/

	setChildElementsEvents:function(cDivId,nDelayTimeLocal){
	
		if(cDivId!=undefined){
			this.aEventObjects=[];
			this.aEventObjects[0]=cDivId;
	
		}
		for(var i=0;i<=this.aEventObjects.length-1;i++){
					
			var div=document.getElementById(this.aEventObjects[i]);
			
			var elms = div.getElementsByTagName("a");
			
			//If mouseover Event already Exists Add Delay Function			
			for(var j=0;j<=elms.length-1;j++){
				
				elms[j].id=this.aEventObjects[i] + "Anchor" + j;

										
				//If mouseover Event already Exists Add Delay Function
				if( (elms[j].onmouseover!=undefined) && (elms[j].onmouseover!=null) && (elms[j].onmouseover!="") && (elms[j].rel=="delay") ){
					
					var mystring=elms[j].onmouseover;
					mystring=mystring +"";
					
					this.anchorFunct = mystring.substring( mystring.indexOf( '{' )+2, mystring.lastIndexOf( '}' ));
	
					elms[j].cAnchorAction=eventTriggerDelay.anchorFunct;
					
					if(nDelayTimeLocal!=undefined){
						elms[j].ld=nDelayTimeLocal;
					}
					
					elms[j].onmouseover=function(event){ 
						if(this.ld!=undefined){
							
							eventTriggerDelay.setEventTriggerDelay(this.cAnchorAction ,this.ld,this.id) 
							
						}else{
							eventTriggerDelay.setEventTriggerDelay(this.cAnchorAction ,eventTriggerDelay.nDelayTime,this.id)  
						}
						
					};
					
				} 
				//if( (elms[j].onmouseout!=undefined) && (elms[j].onmouseout!=null) && (elms[j].onmouseout!="") && (elms[j].rel=="delay")){	
					
					if ( elms[j].addEventListener )
					elms[j].addEventListener("mouseout",function(event){clearTimeout(eventTriggerDelay.oEventTrigger);}, false);
					     else if ( elms[j].attachEvent )
					elms[j].attachEvent("onmouseout",function(event){clearTimeout(eventTriggerDelay.oEventTrigger);});
					
				//}
				
			}		
		}
		
	}
	
}
