Js代码

function Ajax(){  
    this.httpXML=false;  
    this.init();  
}  
Ajax.prototype.init=function(){  
    if(window.XMLHttpRequest){  
        this.httpXML=new XMLHttpRequest();   
        if (this.httpXML.overrideMimeType){  
            this.httpXML.overrideMimeType("text/xml");   
        }  
    }else if(window.ActiveXObject){  
        try{this.httpXML = new ActiveXObject("Msxml2.XMLHTTP");}catch (e){   
             try{this.httpXML = new ActiveXObject("Microsoft.XMLHTTP");}catch (e){}   
        }  
    }  
    if(!this.httpXML){  
        window.alert("can't create XMLHttpRequest object");  
        return null;  
    }  
}  
Ajax.prototype.send=function(_method,_url,_data,_callback){  
    this.httpXML.onreadystatechange=function(){  
        if(this.readyState==4&&this.status==200){  
            _callback.call(this,this.responseText);  
        }  
    }  
      
    if (_method.toLowerCase() == "get"){   
         //if(navigator.userAgent.indexOf("MSIE")<=0){  
         //     netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");  
         //}  
         this.httpXML.open(_method, _url, true);   
         this.httpXML.send(null);   
    }else if (_method.toLowerCase() == "post"){   
         this.httpXML.open(_method, _url, true);   
         this.httpXML.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");   
         this.httpXML.send(_data);   
    }   
      
}  
 
Ajax.prototype.callback=function(){  
       

function Ajax(){
 this.httpXML=false;
 this.init();
}
Ajax.prototype.init=function(){
 if(window.XMLHttpRequest){
  this.httpXML=new XMLHttpRequest();
  if (this.httpXML.overrideMimeType){
            this.httpXML.overrideMimeType("text/xml");
        }
 }else if(window.ActiveXObject){
  try{this.httpXML = new ActiveXObject("Msxml2.XMLHTTP");}catch (e){
             try{this.httpXML = new ActiveXObject("Microsoft.XMLHTTP");}catch (e){}
        }
 }
 if(!this.httpXML){
  window.alert("can't create XMLHttpRequest object");
  return null;
 }
}
Ajax.prototype.send=function(_method,_url,_data,_callback){
    this.httpXML.onreadystatechange=function(){
        if(this.readyState==4&&this.status==200){
      _callback.call(this,this.responseText);
     }
    }
   
    if (_method.toLowerCase() == "get"){
         //if(navigator.userAgent.indexOf("MSIE")<=0){
         //     netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
         //}
         this.httpXML.open(_method, _url, true);
         this.httpXML.send(null);
    }else if (_method.toLowerCase() == "post"){
         this.httpXML.open(_method, _url, true);
         this.httpXML.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
         this.httpXML.send(_data);
 }
 
}

Ajax.prototype.callback=function(){
 
}

Html代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" > 
<head> 
    <title>完美兼容IE、FF、Opera浏览器</title> 
    <script type="text/javascript" src="js/ajax.js"></script> 
    <script type="text/javascript"> 
        function send(){  
            ajax=new Ajax();  
            ajax.send("get","listener/Hajax.ashx","post测试请求",ddd);  
        }  
          
        function ddd(data){  
            alert(data);  
        }  
    </script> 
</head> 
<body> 
    <button onclick="send()">测试</button> 
</body> 
</html> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>完美兼容IE、FF、Opera浏览器</title>
    <script type="text/javascript" src="js/ajax.js"></script>
    <script type="text/javascript">
        function send(){
            ajax=new Ajax();
            ajax.send("get","listener/Hajax.ashx","post测试请求",ddd);
        }
       
        function ddd(data){
            alert(data);
        }
    </script>
</head>
<body>
    <button onclick="send()">测试</button>
</body>
</html>