標籤:策略 通道 img alt show js代碼 XML 產生 src
Ajax(阿賈克斯)優點: 實現局部重新整理(非同步方式-頁面繼續操作,無需等待,無重新整理)缺點: 跨域(違背了同源策略)[Proxy代理,JSONP,CORS]同源策略:要訪問的地址:協議名相同,網域名稱相同,連接埠相同
同步與非同步同步:打電話(等待,阻塞) var w=show(); console.log(w);//123非同步:發資訊(非阻塞) show(function(w){ console.log(w);//123 }) .........下面的代碼繼續執行...................
補充
JSON.parse(); 字串轉成對象
Ajsx.js代碼/***Ajax請求* @param{String} url 請求地址* @param{String} method 請求方式(GET/POST)* @param{Object} data 請求資料(POST)* @param{Function} success 成功的回呼函數* @param{Function} fail 失敗的回呼函數*/
function ajax(url,method,data,success,fail){ //1.產生非同步對象 var xhr; if(window.XMLHttpRequest){ xhr=new XMLHttpRequest();//主流瀏覽器 }else{ xhr=new AcitiveXObject(‘Microsoft.XMLHTTP‘);//老IE } //2.建立串連(開啟通道) xhr.open(method,url,true); //3.發送 xhr.send(data); //4.監聽事件,擷取結果 xhr.onreadystatechange=function(){ //readyState:發送狀態,4表示發送完畢 if(this.readyState===4){ //status:返回的結果,200表示成功 if(this.status==200){ //調用success回呼函數 success(this.responseText);//responseText:結果 }else{ //調用fail回呼函數 fail(this.status);//將失敗的狀態代碼傳遞進去 } } }}
10.19隨筆