麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

原生js仿jquery實現對Ajax的封裝

2019-11-20 08:49:39
字體:
來源:轉載
供稿:網友

前言

與js相比,jquery為我們省去了冗長的獲取元素的代碼,不用考慮一些麻煩的兼容問題,更加方便的動畫實現,以及更加方便的方法調用讓我們覺得jquery真是越用越舒服。但是jquery說到底還是對js的封裝,我們不光要用的舒服還要深入理解其中的原理,這樣才能更好的使用它。

首先我們封裝的函數為了能實現可傳入無限多個參數,在使用我們即將封裝的函數時,需要使用對象進行傳參,形式如下:

//data作為參數傳入我們下面封裝的函數var data = {       //數據       user:"yonghu1",       pass:'12345',       age:18,       //回調函數       success:function (data){        alert(data);       }      }

函數封裝:

1、封裝一個輔助函數,把傳進來的對象拼接成url的字符串

function toData(obj){  if (obj == null){    return obj;  }  var arr = [];  for (var i in obj){    var str = i+"="+obj[i];    arr.push(str);  }  return arr.join("&");}

2、封裝Ajax

function ajax(obj){  //指定提交方式的默認值  obj.type = obj.type || "get";  //設置是否異步,默認為true(異步)  obj.async = obj.async || true;  //設置數據的默認值  obj.data = obj.data || null;  if (window.XMLHttpRequest){    //非ie    var ajax = new XMLHttpRequest();  }else{    //ie    var ajax = new ActiveXObject("Microsoft.XMLHTTP");  }  //區分get和post  if (obj.type == "post"){    ajax.open(obj.type,obj.url,obj.async);    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");    var data = toData(obj.data);    ajax.send(data);  }else{    //get test.php?xx=xx&aa=xx    var url = obj.url+"?"+toData(obj.data);    ajax.open(obj.type,url,obj.async);    ajax.send();  }  ajax.onreadystatechange = function (){    if (ajax.readyState == 4){        if (ajax.status>=200&&ajax.status<300 || ajax.status==304){          if (obj.success){            obj.success(ajax.responseText);          }        }else{          if (obj.error){            obj.error(ajax.status);          }        }      }   }  }

總結

以上就是原生js仿jquery實現對Ajax封裝的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品国产乱码一区二区三区四区 | 线观看免费完整aaa 欧美在线一级 | 亚洲四播房 | 天天色宗合 | 欧美日韩免费一区二区三区 | 黄污网站在线 | 少妇的肉体的满足毛片 | 91青青| 日韩精品二区 | 青青青在线免费 | 精品久久久久久亚洲精品 | 国产日产精品久久久久快鸭 | 久久国产精品一区 | 97伦理| 日日碰日日操 | 成人情欲视频在线看免费 | 电影一级毛片 | 久久色网站 | 看中国一级毛片 | 成人三级在线播放 | 国产无遮挡一区二区三区毛片日本 | 精品国产91久久久 | 日本成人一区二区 | 亚洲日本韩国精品 | 日日草夜夜操 | 美女av在线免费观看 | 在线看免电影网站 | 久久久久久久不卡 | 黑人一区二区 | 成人不卡免费视频 | 羞羞视频免费网站含羞草 | 亚洲国产精品久久久久久久 | 在线播放污 | 男女污污视频网站 | 欧美a∨亚洲欧美亚洲 | 中文字幕欧美一区二区三区 | 久夜tv | 92看片淫黄大片欧美看国产片 | 草草视频免费观看 | 国产成人网 | 九色中文字幕 |