【发布时间】:2017-12-17 15:36:28
【问题描述】:
我已经在堆栈中搜索过类似的问题,但找不到明确的答案。我有一个小提琴,可以从一个单词中逐个字母地键入。但是当我运行该函数两次时,它会一起执行。我尝试使用 when 和 then 但它似乎仍然不起作用。我希望结果是“Hello, World!Hello2”,但它会一起打印出来,“HHeelllloo....”
http://jsfiddle.net/Jsbbvk/vL8tLwfh/
(一些伪代码)
$.when(showText(param1, param2)).then(function() {
showText(param3, param4);
});
【问题讨论】:
-
showText(param1, param2)是做什么的?然后返回 - 哦,我明白了,它返回 undefined ...你知道$.when做什么吗? -
$.when不会变魔术(这里根本不应该使用它)。您的showText函数需要返回一个承诺,该承诺将在动画完成后得到解决。 -
您的预期结果是什么?
-
你知道回调是如何工作的吗?如果没有,就从那开始。使用 one 作为
showText的参数,并在if (index < message.length)的else部分调用它 - 即迭代结束时 -
谢谢Bergi,我已经对此进行了调查,并成功创建了带有回调的showText函数!
标签: javascript jquery .when