在實際的開發中可能要遇到兼容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>