AJAX使用原因:
在学习AJAX之前我们要先知道为什么要去使用AJAX。在以前前端对HTML页面进行刷新是通过重新加载新的页面来实现的,可是伴随着HTML页面元素越来越多,这种刷新方式因为速度太慢,又消耗资源,慢慢满足不了客户的需求。这个时候AJAX思想就出来了。
AJAX思想:
通过对页面进行部分刷新,从而起到既能满足用户的需求,又能极大的节省时间和资源。
AJAX实现:
下面展示一些
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","/ajax/test1.txt",true);
xmlhttp.send();
}
首先我们要实例化一个xmlhttp对象,由于浏览器的兼容性问题。有的浏览器满足XMLHttpRequest对象,有的浏览器满足ActiveXObject对象。所以我们要先进行一个判断语句来选择实例化的对象类型。
然后我们再写一个监听事件,监听事件中有个回调函数。只有当实例化对象xmlhttp的readyState为4,status为200的时候了,我们才会渲染HTML制定的部分。由于在open函数中定义的是’true’也就是异步的,所以我们会先将异步事件放到任务队列中去,先将后面的同步事件处理完再来处理已经准备好的异步事件。在open函数中可以定义好规则,如请求方式\URL\异步或同步。
一般情况我们都是用true状态,所以一般都是异步请求的。
其实AJAX的根本就是实例化的对象xmlhttp,其对象函数就是XMLHttpRequest(大多数浏览器兼容)。