zhangxiaoxu123
2023-07-06 b3aaeffd19122233004b65a9d715baebfb278a72
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
const animateCSS = (element, animation, prefix = 'animate__') =>
// We create a Promise and return it
new Promise((resolve, reject) => {
  const animationName = `${prefix}${animation}`;
  const node = document.querySelector(element);
  node.classList.add(`${prefix}animated`, animationName);
 
  // When the animation ends, we clean the classes and resolve the Promise
  function handleAnimationEnd(event) {
    event.stopPropagation();
    node.classList.remove(`${prefix}animated`, animationName);
    resolve('Animation ended');
  }
 
  node.addEventListener('animationend', handleAnimationEnd, {once: true});
});
 
export default animateCSS