在实际的开发中可能要遇到兼容IE 6 7 8浏览器
我们的ajax对象有两个地方不兼容
**1 创建ajax对象的时候不兼容**
new XMLHttpRequest() ==>这是标准的浏览器使用的
new ActiveXObject('Micorsoft.XMlHTTP') ==>IE 低版本使用的
**2 接受响应的不兼容**
标准的浏览器 ==》onload 事件
IE 低版本 没有onload 事件,
IE低版本只有onreadystatechange方法
如果IE低版本接受相应,只能使用这个onreadystatechange事件
**3 IE的问题**
创建ajax对象这个事情
必须是真是的IE6 7 8浏览器才可以
如果使用的是IE 11浏览器的模拟器,但是浏览器的内核依旧是IE11的内核,那我们看不出来他能不能用
<script type="text/javascript">
**// 1 创建ajax对象**
// 标准浏览器 var xhr=new XMLHttpRequest()
// 低版本的 var xhr=new ActiveXObject('Micorsoft.XMlHTTP')
let url=''
var xhr=new XMLHttpRequest()
**// 2 配置请求信息**
xhr.open('get',url)
**// 3 接受响应**
// 兼容iE的 高版本就自然会接受
xhr.onreadystatechange=function(){
// 在这里判断ajax的状态码是否执行成功
// 还要判断ajax 的状态码是成功还是失败200-299
if(xhr.readyState===4&&/^2\d{2}$/.text(xhr.status)){
// if(xhr.readyState===4&&(xhr.status<=299&&xhr.status>=200))
console.log('打印4?')
console.log(status)
console.log(xhr.responseText)
}
}
**// 4 发送请求**
xhr.send()
</script>