XMLHttpRequest Level 2在onreadystatechange
的基础上增加了许多更有意义的事件。
这些事件与readyState
值之间是否存在对应关系?
就我所知:
1 loadstart
2 progress
3 ?
4 loadend; load
我还没有算出3的等效值,这有点模糊。
下面是我使用以下代码观察到的结果:
var oReq = new XMLHttpRequest();
oReq.addEventListener("progress", ev);
oReq.addEventListener("load", ev);
oReq.addEventListener("loadstart", ev);
oReq.addEventListener("loadend", ev);
oReq.addEventListener("readystatechange", ev);
oReq.open('GET', '/blah');
function ev(e) {
console.log(e.type, oReq.readyState);
}
oReq.send();
输出结果readystatechange 1
loadstart 1
readystatechange 2
readystatechange 3
progress 3
readystatechange 4
load 4
loadend 4
所以看起来是
- loadstart
- ? ?-没有对等的-(即收到的报头)
- 加载/loadend