ajax onreadystatechange狀態轉換函數研究

文章來源:Web開發網

w3dev.cn 

  有些時候我們需要將ajax請求的功能打包成一個類庫方便調用,此時需要用到ajax的狀態轉換函數,對於執行onreadystatechange函數時,this對象到底是那個對象,不同瀏覽器的表現方式差異頗大。

  下面未進行打包時狀態處理函數的測試,示例代碼如下

  運行上面的代碼後,下面是不同瀏覽器的輸出,循序爲IE6,IE7,IE8,FF2,FF3.6,chrome4,opera9,safari3。
IE6 IE7 IE8

FF2 FF3

chrome4 opera9

safari3


  通過上圖可以看出,除了IE6下this==window對象,FF2下this爲狀態轉換函數其他瀏覽器this對象都爲xhr對象本身。所以在進行打包時,得注意下狀態轉換函數this的指向問題。

  當了解了onreadystatechange狀態轉換函數中this對象爲什麼時,我們就可以進行一些簡單的打包操作了。

  打包後的簡單示例代碼如下。

推薦的事件綁定方法

 

ajax相關問題

ajax問題總結

ajax responseText -1072896748錯誤

ajax指定爲post但是未設置content-type或未指定鍵時時如何獲取提交的內容

firefox下XMLHttpRequest重用時nsIXMLHttpRequest.send發生錯誤的解決方案

發佈了36 篇原創文章 · 獲贊 5 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章