ajax的封装
来源:互联网 发布:甜虾 知乎 编辑:程序博客网 时间:2024/06/05 11:50
AJAX是什么?
AJAX是一种网页异步加载技术,也就是说在不加载整个页面的情况下,加载某一更新的部分。
AJAX的核心技术是XMLHTTPRequest,我们来看一下如何创建及封装一个AJAX。
创建一个ajax,只需要new一个xhr对象,但存在兼容问题,主要针对IE浏览器的兼容。
下面我们举两个例子,一个是加载本地数据,一个是加载服务器的数据。首先我们看一个加载本地数据的例子/* * 函数名:createXHR * 作用:创建XHR对象时,兼容IE浏览器 * 参数:无 */ function createXHR(){ if( window.XMLHttpRequest ){ return new XMLHttpRequest(); }else{ return new ActiveXObject( Microsoft.XMLHTTP ); } } /* * 函数名:ajax * 作用:加载本地数据 * 无参数: */ function ajax(url){ //1.创建xhr对象 var xhr = createXHR(); //2.建立连接 xhr.open("GET/POST","url",false/true); 参数1:请求方式 参数2:请求地址(这里是一个本地数据) 参数3: 同步/异步 //3.发送请求 xhr.send(null); //4.对接受到的数据进行处理 xhr.onreadystatechange = function(){ //readyState 代表的是状态 有5种状态 if( xhr.readyState == 4){ console.log(xhr.responseText); } } } ajax('http://datainfo.duapp.com/shopdata/userinfo.php');
第二种加载服务器的数据:
/* * 函数名:createXHR * 作用:创建XHR对象,兼容IE8浏览器 * 参数:无 */function createXHR(){ if( window.XMLHttpRequest ){ return new XMLHttpRequest(); } return new ActiveXObject( Microsoft.XMLHTTP );}/* * 函数名:ajax * 作用:加载服务器的数据 * 参数: * url:加载数据的地址 * */ function ajax(url){ //1.创建xhr对象 var xhr = createXHR(); //2.向服务器请求数据 xhr.open("get/post",url,false/true); //3.发送数据 xhr.send(null); //4.对请求到的数据进行处理 xhr.onreadystatechange = function(){ if( xhr.status==200 && xhr.readyState == 4 ){ var script = document.createElement("script"); document.body.appendChild(script); var callbackname = 'callback'; script.src = url + "?" + '&callBack'+callbackname; window['callback'] = function(data){ console.log("data",data); document.body.removeChild(script); } } } } ajax('http://datainfo.duapp.com/shopdata/userinfo.php');
阅读全文
0 0
- 自己封装的ajax
- Ajax的js封装
- Ajax的封装
- 封装的ajax
- ajax 调用的封装
- 简单的Ajax封装
- ajax的再次封装!
- 自己封装的ajax
- 简单的ajax封装
- ajax的封装
- 封装的原生ajax
- Ajax的封装
- Ajax的封装
- AJAX函数的封装
- Ajax的简单封装
- ExtJS的Ajax封装
- 封装jQuery的ajax
- ajax的封装
- PHP 5.3.0以上推荐使用mysqlnd驱动
- cocos 3.10 ccui.RichText修改计算行宽的计算方法
- tensorflow/tf.set_random_seed()
- 前向分步算法
- CI框架学习之--隐藏入口文件-index.php
- ajax的封装
- 关于深度学习中Dropout的理解
- 【转】Hexo的Next主题配置
- Kotlin-35.反射(Reflection)
- jquery对表单的几种简单的操作
- pf_ring userland code C code and C++ code Cross compile
- Install sublime text3 on Ubuntu 14.04
- 第一天学c++
- 你眼中的“老实人”,不过是职场中的“妈宝男”