В прошлом мне удавалось установить какое-то состояние анимации и проверить, активна ли анимация, если она неактивна, вы можете запустить анимацию TL, если она активна, в основном вы возвращаете false.
Попробуйте что-то вроде
let isAnim = false;
if (isAnim === false) {
//Animation is not running run
TweenLite.to($elOldContent, .75, {left:"-300px", opacity:"0",
onStart: function(){
isAnim = true;
},
onComplete: function(){
isAnim = false;
//Hide, reset the position and opacity.
$elOldContent.removeClass('active').hide().css({"left":"0","opacity":"1"});
}
);
}
Пользователь может щелкнуть столько раз, сколько он хочет, но анимация не выйдет из синхронизации