0

我不是 JavaScript/jQuery 方面的专家。所以我在这里。

我正在调用一个需要一些时间来处理的 javascript 函数。当我的数据在成功方法中可用时,有什么方法可以跟踪事件。我的代码如下。

function doWave() {
    window.plugins.AudioFxDemo.doConvert('http://c0458222.cdn.cloudfiles.rackspacecloud.com/RC1_2.2_Conversation_line7.mp3',
        function(data) {
            // success
            alert(data);
        }, function(error) {
            alert(error);
        });
}

我正在获取数据,但这需要一些时间。那么我如何知道数据何时可用。

-Arefin

4

1 回答 1

0

我不太清楚你想做什么。基于回调的 API 的通常行为是在数据可用时调用成功方法。所以只要把你的处理代码放在那里。我想您可以触发一个额外的事件处理程序并在另一个回调中处理数据,但这是否有意义取决于您要获取的内容。

还请发布有关您的编程环境(框架、目标客户端、工具等)的更多详细信息,以便我们为您提供更好的建议。:)


更新:

如果您尝试doWave定期调用该函数,可以尝试以下操作:

function doWave() {
    window.plugins.AudioFxDemo.doConvert('[url]',
        function(data) {
            // process data, display etc.
            // [...]

            // queue doWave for immediate execution
            setTimeout(doWave, 0);
        }, function(error) {
            alert(error);
        });
}

这样,每次doWave执行时,都会在当前成功函数执行完成后立即将另一个执行排队。

如果您想了解更多信息,这里有一篇关于计时器功能的好文章。

我仍然不确定这是您要查找的内容,如果不是,请评论/更新问题。

于 2012-08-07T12:49:46.667 回答