首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有进度事件的Queue.js

带有进度事件的Queue.js
EN

Stack Overflow用户
提问于 2013-03-27 20:38:42
回答 1查看 1.3K关注 0票数 3

我想加载多个文件,以便在D3.js中使用。Queue.js似乎是一个很好的工具。由于d3.js在v3中支持更高级的XHR功能,所以我想用Queue.js加载多个文件并显示加载进度,并在出错时中止所有文件的加载。

下面是如何检查进度以及如何使用Queue.js:https://github.com/mbostock/d3/wiki/Upgrading-to-3.0

我不知道如何组合这些代码片段。

这就是我到目前为止所拥有的。JSFiddle

我认为在Queue.js上有一个进度事件处理程序更好,但我不知道如何实现这一点。

示例代码:

代码语言:javascript
复制
queue()
  .defer(d3.json, "file1.json") // https://api.github.com/repos/mbostock/d3")
  .defer(d3.json, "file2.json")
  .progress(function() { console.log(d3.event.loaded/d3.event.total; }) // or use argument?
  .error(function(error) { this.abort(); console.log(error); })
  .await(function(data) { console.log(data); });
EN

回答 1

Stack Overflow用户

发布于 2013-11-21 12:27:26

queue.js中的queue()返回的对象没有"progress“和"error”方法。这里有一个指向源代码的链接:https://github.com/mbostock/queue/blob/master/queue.js

当queue.js获取一个xhr对象并使用'apply‘来执行函数时,下面的变通方法对我有效。它涉及到使用xhr对象的get()方法来执行函数。

示例代码:

代码语言:javascript
复制
queue().defer(d3.json("file1.json")
                 .on("progress", function({console.log(d3.event.loaded);})                                               
                 .get, /*First argument*/ "error")
       .await(function (error, file1_data) {console.log(file1_data);});

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15658990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档