onreadystatechange如何監(jiān)聽加載進(jìn)度

小樊
87
2024-07-02 16:51:40
欄目: 編程語言

要監(jiān)聽加載進(jìn)度,可以使用onreadystatechange屬性來監(jiān)聽XMLHttpRequest對(duì)象的狀態(tài)變化。具體步驟如下:

  1. 創(chuàng)建一個(gè)XMLHttpRequest對(duì)象,可以使用以下代碼:
var xhr = new XMLHttpRequest();
  1. 設(shè)置onreadystatechange屬性為一個(gè)回調(diào)函數(shù),該函數(shù)會(huì)在XMLHttpRequest對(duì)象的狀態(tài)發(fā)生變化時(shí)被調(diào)用。在回調(diào)函數(shù)中可以根據(jù)xhr.readyStatexhr.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('加載中');
    }
};
  1. 發(fā)起一個(gè)HTTP請(qǐng)求,可以使用opensend方法:
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)度。

0