0

我使用画布绘制图表:

var lg = new html5.graph.line //(just sample)
lg.draw(itemsReDraw, colorReDraw, line, param);

这条线大约需要 6 秒,我想显示加载图标,当上面的线完成时,加载图标将 hide()

我找不到如何检测该行是否完成。

任何帮助或其他方式将不胜感激。

感谢你的帮助。

4

1 回答 1

1

绘图功能不是同步的吗?您应该能够在之后立即调用您想要的任何内容,draw(blah)并且它会在绘制完成后立即执行。如果您想对其进行一些抽象,您可以在 html5.graph.line.draw 函数中添加一个名为“callback”的额外参数,并在 draw 命令之后立即执行此回调。

html5.graph.line.draw = function (itemsReDrae, colorReDraw, line, param, callback) {
    //draw the line
    if (typeof (callback) == 'function') {
        callback();
    }
};

然后,当您想使用绘图功能时,只需包含一个回调即可。

//show the loading overlay
lg.draw(true, true, line, param, function () {
    //hide the loading overlay
    console.log('done!');
});
于 2013-08-08T02:14:54.247 回答