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