﻿        function AttachEvent(obj,evt,fnc,useCapture){
	        if (!useCapture) useCapture=false;
	        if (obj.addEventListener){
		        obj.addEventListener(evt,fnc,useCapture);
		        return true;
	        } else if (obj.attachEvent) return obj.attachEvent("on"+evt,fnc);
	        else{
		        MyAttachEvent(obj,evt,fnc);
		        obj['on'+evt]=function(){ MyFireEvent(obj,evt) };
	        }
        } 

        //The following are for browsers like NS4 or IE5Mac which don't support either
        //attachEvent or addEventListener
        function MyAttachEvent(obj,evt,fnc){
	        if (!obj.myEvents) obj.myEvents={};
	        if (!obj.myEvents[evt]) obj.myEvents[evt]=[];
	        var evts = obj.myEvents[evt];
	        evts[evts.length]=fnc;
        }
        function MyFireEvent(obj,evt){
	        if (!obj || !obj.myEvents || !obj.myEvents[evt]) return;
	        var evts = obj.myEvents[evt];
	        for (var i=0,len=evts.length;i<len;i++) evts[i]();
        }
        
        function fireDOMEvent(eventName, target)
        {
            //On IE
            if(target.fireEvent)
            {
                target.fireEvent("on" + eventName);
            }
            
            //On Gecko based browsers
            if(document.createEvent)
            {
                var evt = document.createEvent("HTMLEvents");
                
                if(evt.initEvent)
                {
                    evt.initEvent(eventName, true, true);
                }
                
                if(target.dispatchEvent)
                {
                    target.dispatchEvent(evt);
                } 
            }
        } 

