XHR的對象及用法


function  createXHR(){
   
    //檢測原生XHR對象是否存在,如果存在剛返回它的新實例;
    //如果不存在,則檢測ActiveX對象;
    //如果兩個都不存在,就拋出一個錯誤。
   
    if(typeof XMLHttpRequest != "undefined"){
        return new XMLHttpRequest();
    }else if(typeof ActiveXObject != "undefined"){
        //適合IE7之前的版本
        if(typeof arguments.callee.activeXString != "string"){
            var versions = ["MSXML2.XMLHttp.6.0","MSXML2.XMLHttp.3.0","MSXML.XMLHttp"];
            for(var i=0,len=versions.length; i<len; i++){
                try{
                    var xhr = new ActiveXObject(versions[i]);
                    arguments.callee.activeXString = versions[i];
                    return xhr;
                }catch (ex){
                    //跳過
                }
            }
        }
       
        return new ActiveXObject(arguments.callee.activeXString);
    }else{
        throw new Error("No XHR object available.");
    };
}


//創建XHR對象
var xhr = createXHR();
xhr.onreadystatechange =  function(){
    if(xhr.readyState == 4){
        if((xhr.status >=200 && xhr.status < 300 ) || xhr.status == 304 ){
            alert(xhr.responseText);
        }else{
            alert("Request was unsuccessful : " + xhr.status);
        }
    }
}   

//讀取example文本
xhr.open("get","example.txt",true);
xhr.send(null);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM