ajax的兼容問題

在實際的開發中可能要遇到兼容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>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章