Javascript 我有两个函数,我希望第二个函数在第一个函数完成动画后运行

Javascript 我有两个函数,我希望第二个函数在第一个函数完成动画后运行,javascript,Javascript,我不想使用Jquery,因为我是javascript的初学者。 在这个层次上,我无法理解大多数Jquery语法,您可以从第一个函数调用第二个函数: function firstRun() { rightBox.style.animation = "TextEffectMadeWithCSS 10s"; } function secondRun() { rightBox.style.animation = "TextEffectMadeWithCSS 10s"; } 可以使用ani

我不想使用Jquery,因为我是javascript的初学者。
在这个层次上,我无法理解大多数Jquery语法,您可以从第一个函数调用第二个函数:

function firstRun() {
   rightBox.style.animation = "TextEffectMadeWithCSS 10s";
}

function secondRun() {
   rightBox.style.animation = "TextEffectMadeWithCSS 10s";
}
可以使用animationend事件


您在哪里调用这些函数?您需要了解JavaScript是异步的,以便确保在第一个函数之后调用第二个函数,您需要第一个函数在第二个函数完成后执行第二个函数,这称为回调函数,否则JavaScript将先启动第一个,然后启动第二个,第二个将在第一个完成之前执行。尽管如此,您并没有向我们显示任何代码来进一步帮助您。我正在从html页面本身调用函数,只是想发布此消息。这里有一个+1和fiddle链接:thx对于jsfiddle示例,我还没有让它工作,但我认为您的答案是最好的,并且让我走上了正确的道路。我想没有必要删除侦听器,这取决于函数的功能。但它将被执行第二次。我只是想加上它作为预防措施。
var firstRun = function() {
    rightBox.style.animation = "TextEffectMadeWithCSS 10s";
    secondRun();
}

var secondRun = function() {
    rightBox.style.animation = "TextEffectMadeWithCSS 10s";
}
function firstRun(){
    rightBox.style.animation = "TextEffectMadeWithCSS 10s";
    rightBox.addEventListener('animationend', secondRun); //once it's finished.
}

function secondRun(){
    rightBox.style.animation = "TextEffectMadeWithCSS 10s";
    rightBox.removeEventListener('animationend', secondRun);
    //remove the listener so this doesn't loop.
}