所以我正在尝试使用d3在javascript中加载csv文件并尝试使用进度条显示加载时所做的进度。这就是我所拥有的:
d3.csv("my.csv",function(data){
//do stuff with data
}).on("progress", function(p){
//update progress bar
console.log(d3.event.loaded);
});
这就是它输出的所有内容:
13248560
这是文件中的总字节数。我想知道如何获取它已加载的值,以便我的进度条可以适当加载。有谁知道如何完成这项任务?
答案 0 :(得分:2)
我认为事件d3.event.loaded
返回总大小是正常的。您是否尝试以下方法从p
上的函数中的变量"progress"
获取进度?
然后,为了获得实际进度,您可以使用以下问题:How to get progress from XMLHttpRequest
最终结果应如下所示:
d3.csv("my.csv",function(data){ //do stuff with data }).on("progress", function(event){ //update progress bar if (d3.event.lengthComputable) { var percentComplete = Math.round(d3.event.loaded * 100 / d3.event.total); console.log(percentComplete); } } });