一、什么是Ajax
Ajax,即是Asynchronous Javascript And XML(异步的 JavaScript 和 XML), 它是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
二、Ajax应用场景
- 运用XHTML+CSS来表达资讯;
- 运用JavaScript操作DOM(Document Object Model)来执行动态效果;
- 运用XML和XSLT操作资料;
- 运用XMLHttpRequest或新的Fetch API与网页服务器进行异步资料交换;
三、Ajax的封装
XMLHttpRequest 是 AJAX 的基础。(IE5 和 IE6 使用 ActiveXObject)
// 1. 创建 XMLHttpRequest 对象
var http;
if (window.XMLHttpRequest) {
http = new XMLHttpRequest();
} else {
http = new ActiveXObject("Microsoft.XMLHTTP");
}
// 2. 建立监听
// onreadystatechange: 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。
/* readyState
存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
0: 请求未初始化
1: 服务器连接已建立
2: 请求已接收
3: 请求处理中
4: 请求已完成,且响应已就绪 */
http.onreadystatechange = function() {
if ( http.readyState == 4 && http.status==200) {
// 响应数据:http.responseText
console.log(http.responseText);
}
}
// 3. 发送请求 open(method,url,async)
http.open("get", url, true);
http.send();