Как передать функцию GSAP в качестве аргумента для другой функции?

Добрый день! Я хочу более гибко управлять функциями GSAP для анимации и заранее определить функцию анимации и оперировать только аргументами.

Ниже код, где есть функция fadeInUp, в качестве параметра я передаю какие-то селекторы, но так же мне хотелось бы передать gsap функцию .reverse когда надо. Как лучше это сделать?

window.addEventListener('load', function() {

    let blockred = document.querySelector('#blockred');

    var tl = gsap.timeline();

    function fadeInUp(blocks, method) { // аргументами функции являются селекторы, к которым надо применять анимацию и метод GSAP, для управления воспроизведением анимаций. В параметре method я бы хотел передать, например .reverse
        tl.from(blocks, {duration: 1, y: 25, opacity: 0, ease: "sine.in"});
    }

    fadeInUp([blockred]); // выполняю функцию, передаю параметр селекторов

    // event
    

    blockred.addEventListener('click', function (evt) {

        fadeInUp.reverse(); // в идеале в итоге выполнить это, но не работает ,так как  reverse is not defined
        
    })

});
  • Вопрос задан
  • 89 просмотров
Пригласить эксперта
Ответы на вопрос 1
ktim8168
@ktim8168
Frontend Developer
Тебе надо вернуть результат функции, проверь что получится
function fadeInUp(blocks, method) {
  return tl.from(blocks, {duration: 1, y: 25, opacity: 0, ease: "sine.in"});
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы