第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

js onreadystatechange 和 onload區(qū)別

js onreadystatechange 和 onload區(qū)別

慕慕森 2019-05-13 08:08:19
js onreadystatechange 和 onload區(qū)別
查看完整描述

2 回答

?
慕碼人2483693

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超9個(gè)贊


XMLHttpRequest 對象的 onload 回調(diào)函數(shù)是在異步請求加載完成后所執(zhí)行的函數(shù),當(dāng)JavaScript 監(jiān)測到請求的數(shù)據(jù)全部傳輸完成后就會觸發(fā)該函數(shù)。而 open() 函數(shù)設(shè)置異步請求的 method、URL 和同步方式等參數(shù),執(zhí)行 open() 后再執(zhí)行 send() 函數(shù)才開始向服務(wù)器發(fā)送請求。

另外,onload 回調(diào)函數(shù)實(shí)際上是 XHR2 中新加入的功能,部分瀏覽器可能不支持這個(gè)函數(shù)名。要避免不兼容的現(xiàn)象,可以使用傳統(tǒng)  XMLHttpRequest,如:

1

2

3

4

5

6

7

8

9

10

11

//省略其他代碼

request.onreadystatechange=function() // 狀態(tài)改變回調(diào)函數(shù)

{

  // 判斷 request.readyState==4 的效果等同于 onload 

  if(request.readyState==4 && request.status==200)

  {

    // 加載且響應(yīng)正常完成后執(zhí)行的代碼.... 

  }

}

request.open("GET",url,true); // 打開對象,也可以說是設(shè)置參數(shù)

request.send(); // 發(fā)送請求

 

還有一些誤解需要澄清一下,

  1. window.onload 回調(diào)函數(shù)其實(shí)是在頁面加載完成后(包括圖片內(nèi)容的顯示)才會執(zhí)行,并不是頁面加載的等待過程中就執(zhí)行。

  2. request.open() 并沒有發(fā)送請求,只是設(shè)置一些參數(shù),在 send() 時(shí)才會發(fā)送(注意不要漏寫這條語句),發(fā)送后就會進(jìn)入 readyState 監(jiān)聽狀態(tài),當(dāng) readyState 的值有改變就會執(zhí)行 onreadystatechange 回調(diào)函數(shù),當(dāng)異請求的步數(shù)據(jù)接收完成(即      readyState 變?yōu)?4)后就會執(zhí)行      onload 回調(diào)函數(shù)(注意僅在 XHR2 中有效)。

 




查看完整回答
反對 回復(fù) 2019-05-14
  • 2 回答
  • 0 關(guān)注
  • 729 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號