Я пытаюсь воспроизвести извивающийся текст, найденный в состояниях наведения, размещенных на веб-сайте Bureau.cool в нижней части информационной страницы https://bureau.cool/#!/info
Вот где я сейчас нахожусь: https://codepen.io/isaidicanshout/pen/QYxxJV
Первоначально я пытался использовать CSS-анимацию с классом добавления / удаления, который имел желаемый эффект, КРОМЕ этого эффекта сразу "включался" и выключался, а не останавливался / начинался плавно.
Итак, я начал с нуля, используя бесконечную повторяющуюся функцию, которая переключает класс transform: scaleY снова и снова, однако у меня возникают проблемы с остановкой функции после прекращения зависания.
MyВопрос: Как мне создать функцию, которая повторяется вечно, когда завис, но останавливается сразу после прекращения зависания?
// MAKES WORDS WIGGLE ON HOVER
function wiggler() {
// Hover on .wiggle class
$('.wiggler').hover(function(index) {
var currentHover = $(this);
console.log(currentHover);
function repeatForever() {
// Finds all spans inside the hovered element, does something after a pause
// uses jquery-timing.min.js
$(currentHover).children('span').each($).wait(15, function(index) {
// Toggle the animation class
$(this).toggleClass('ani');
});
// repeats forever
window.setTimeout(repeatForever, 300);
};
// starts the loop
repeatForever();
},function() {
var currentHover = $(this);
console.log(currentHover);
$(currentHover).children('span').each($).wait(15, function(index) {
// trying to stop it from happening, but to no avail
$(this).clearQueue().removeClass('ani');
});
});
};