要監(jiān)聽加載進(jìn)度,可以使用onreadystatechange
屬性來監(jiān)聽XMLHttpRequest對(duì)象的狀態(tài)變化。具體步驟如下:
var xhr = new XMLHttpRequest();
onreadystatechange
屬性為一個(gè)回調(diào)函數(shù),該函數(shù)會(huì)在XMLHttpRequest對(duì)象的狀態(tài)發(fā)生變化時(shí)被調(diào)用。在回調(diào)函數(shù)中可以根據(jù)xhr.readyState
和xhr.status
屬性的值來判斷加載進(jìn)度。以下是一個(gè)示例代碼:xhr.onreadystatechange = function() {
if (xhr.readyState == 4) { // 請(qǐng)求已完成
if (xhr.status == 200) { // 請(qǐng)求成功
console.log('加載完成');
} else {
console.log('加載失敗');
}
} else {
console.log('加載中');
}
};
open
和send
方法:xhr.open('GET', 'https://example.com/api/data', true);
xhr.send();
當(dāng)XMLHttpRequest對(duì)象的狀態(tài)發(fā)生變化時(shí),回調(diào)函數(shù)會(huì)被調(diào)用,從而可以監(jiān)聽加載進(jìn)度。