fadeInByWord = (wordsArray, displayElement, milliseconds) => {
displayElement.innerHTML = wordsArray
.map((word) => '<span class="faded-word">' + word + "</span>")
.join(" ");
let wordsForFading = document.querySelectorAll(".faded-word");
wordsForFading.forEach((word) => {
word.addEventListener("transitionend", startNextWordAnimation);
});
function startNextWordAnimation(e) {
let nextWord = e.target.nextElementSibling;
if (nextWord) {
nextWord.classList.add("faded-activated");
}
}
startSequence(displayElement);
function startSequence(displayElement) {
if (!displayElement) {
return;
}
setTimeout(() => {
displayElement
.querySelector(".faded-word")
.classList.add("faded-activated");
}, milliseconds);
}
}