javascript - ajax文件下载 : progress event, 进行下载

标签 javascript php ajax file-upload

我了解 xhr.upload.onprogress 事件(文件上传)。 像这样:

    xhr.upload.onprogress = function(e) {   // if (e.lengthComputable) ...
        var percentUploaded = Math.floor(100 * e.loaded / e.total);
        progressBarElem.value = percentUploaded;
        messageAreaElem.innerHTML = percentUploaded + "% uploaded";
    }

但是 xhr.onprogress 事件(即从服务器下载文件)又如何呢?

我找不到一个简单的例子。

帕特里克

最佳答案

Document说:

Progress events exist for both download and upload transfers. The download events are fired on the XMLHttpRequest object itself, as shown in the above sample. The upload events are fired on the XMLHttpRequest.upload object.

您可以尝试使用以下代码来验证

var progress = 0.1;

var oReq = new XMLHttpRequest();

//Download progress
oReq.addEventListener("progress", function(evt){
  if (evt.lengthComputable) {
    var percentComplete = evt.loaded / evt.total;
    //Do something with download progress
    console.log(evt.total);
    if(percentComplete > progress ){
        console.log("Finish " + progress * 100 + "%.");
        progress += 0.1;

    }
  }
}, false);

oReq.open("get", "url", true);
oReq.send();

关于javascript - ajax文件下载 : progress event, 进行下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19041447/

相关文章:

javascript - 如何使用 JavaScript/jQuery 将新值添加/推送到存储在 cookie 中的数组

php - mysqli 计数如何划分这两个计数并回显结果

php - 双下拉菜单 - 来自 MySQL 的内容

php - 搜索功能输出为 'array'

php - WP 上的特色图片

javascript - iPad 在通过 AJAX 加载内容后触发元素悬停效果

php - 将div中显示的值传递到php中的另一个页面

javascript - 使用映射遍历对象数组。 javascript 中的过滤器、归约器或 Object.keys()

基于 window.location.href 的条件 URL append 或重定向的 Javascript

javascript - 洪水填充算法选择具有最少邻居数的像素