XMLHttpRequest 2下载进度事件仅触发一次

时间:2011-11-07 16:50:42

标签: javascript ajax html5 xmlhttprequest-level2

我正在尝试通过以下代码获取ajax请求的进度:

var xhr = new XMLHttpRequest();


xhr.addEventListener('progress', function(event) {

    console.log(event.loaded / event.total);
},
false);

xhr.addEventListener('load', function() {

    console.log('load');
},
false);


xhr.open('get', 'test.php', true);
xhr.send();

问题是,progress事件只在load事件发生之前触发一次(也就是说,在Webkit中,它似乎不能在Gecko下工作)。

我做错了什么还是得不到正确支持?

1 个答案:

答案 0 :(得分:12)

使用

xhr.upload.addEventListener('progress', function(event) { ... });

(请注意添加的.upload