function FixPrototypeForGecko()//得火狐event
{
		var Sys={};
  		var ua = navigator.userAgent.toLowerCase();
        window.ActiveXObject ? Sys.ie = ua.match(/msie ([\d.]+)/)[1] :
        document.getBoxObjectFor ? Sys.firefox = ua.match(/firefox\/([\d.]+)/)[1] :
        window.MessageEvent && !document.getBoxObjectFor ? Sys.chrome = ua.match(/chrome\/([\d.]+)/)[1] :
        window.opera ? Sys.opera = ua.match(/opera.([\d.]+)/)[1] :
        window.openDatabase ? Sys.safari = ua.match(/version\/([\d.]+)/)[1] : 0;
        
        //以下进行测试
        //if(Sys.ie) document.write('IE: '+Sys.ie);
        //if(Sys.firefox) document.write('Firefox: '+Sys.firefox);
        //if(Sys.chrome) document.write('Chrome: '+Sys.chrome);
        //if(Sys.opera) document.write('Opera: '+Sys.opera);
        //if(Sys.safari) document.write('Safari: '+Sys.safari);
        if(Sys.firefox){
           HTMLElement.prototype.__defineGetter__("runtimeStyle",element_prototype_get_runtimeStyle);
           window.constructor.prototype.__defineGetter__("event",window_prototype_get_event);
           Event.prototype.__defineGetter__("srcElement",event_prototype_get_srcElement);}
}
function element_prototype_get_runtimeStyle()
{
           //return style instead...
           return this.style;
}
function window_prototype_get_event()
{
           return SearchEvent();
}
function event_prototype_get_srcElement()
{
           return this.target;
}

function SearchEvent()
{
           //IE
           if(document.all)
               return window.event;
        
           func=SearchEvent.caller;
           while(func!=null)
           {
               var arg0=func.arguments[0];
               if(arg0)
               {
                   //if(arg0.constructor==Event)
                      if(arg0.constructor==Event||arg0.constructor==MouseEvent || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation))
                       return arg0;
               }
               func=func.caller;
           }
           return null;
}
