GSAP проблема анимцаии sсale
Здравствуйте. Подскажите, пожалуйста, ответ на следующий вопрос. Использую бибиотеку GSAP. Алгоритм следующий: есть два блока, один анимационно sсale, затем уходит влево, в это время выезжает блок справа, затем их стили сбрасываются и при повторном click все происходит заново. Но проблема в чем, при повторном click skale отрабатывает лишь дважды и всё.
Стили простые: первый блок position: absolute; left: 0 второй блок position: absolute; left: 100% 'src/js/jquery/jquery.js', 'src/js/gsap/TweenMax.min.js', 'src/js/jquery-ui/jquery-ui.min.js' <!doctype html> <html lang='ru'> <head> <meta charset='UTF-8'> <meta http-equiv='X-UA-Compatible' content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <link href="./styles/index-build.css" rel="stylesheet"> </head> <body> <nav class="nav"> <ul class="nav__list"> <li class="nav__item"> <a class="nav__link" href="#">Ссылка 1</a> </li> <li class="nav__item"> <a class="nav__link" href="#">Ссылка 2</a> </li> </ul> </nav> <div class="container"> <div class="initContent initSlide"> <!-- <div class="initContent"> --> <div class="content"> <h2>init</h2> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorum id in laboriosam laudantium magnam nesciunt numquam obcaecati odio ut voluptatibus! Eum hic iste magni nesciunt non officiis, quae ratione recusandae? </p> </div> </div> <div class="nextContent nextSlide"> <!-- <div class="nextContent"> --> <div class="content"> <h2>next</h2> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorum id in laboriosam laudantium magnam nesciunt numquam obcaecati odio ut voluptatibus! Eum hic iste magni nesciunt non officiis, quae ratione recusandae? </p> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorum id in laboriosam laudantium magnam nesciunt numquam obcaecati odio ut voluptatibus! Eum hic iste magni nesciunt non officiis, quae ratione recusandae? </p> </div> </div> </div> <script src="./js/main-scripts.min.js"></script> <script src="./js/scripts.min.js"></script> </body> </html> var gsapInit = (function() { // private var init = function() { }; // public return { init: function() { var _this = this; _this.initProject(); }, initProject: function () { var link = $('.nav__link').eq(0); var container = $('.container'); link.on('click', function (e) { e.preventDefault(); var d1 = $.Deferred(), d2 = $.Deferred(), d3 = $.Deferred(); var toolTimeline = new TimelineMax(); var duration = .5; var first = $('.initSlide'), second = $('.nextSlide'); // first = $('.initContent'), // second = $('.nextContent'); toolTimeline.to(first, duration, { scale : '.8', // opacity : 0, ease: Linear.easeInOut, onComplete : function () { d1.resolve(); } }); d1.done(function () { // alert('done'); toolTimeline.to(first, duration, { left : -100 + '%', // ease: Linear.easeInOut }); toolTimeline.to(second, duration, { left : 0, // ease: Linear.easeInOut onComplete : function () { d2.resolve(); // alert('done'); } }); }); d2.done(function () { // alert('done'); first.toggleClass('initContent nextContent'); second.toggleClass('nextContent initContent', function () { d3.resolve(); }); first.toggleClass('initSlide nextSlide'); second.toggleClass('nextSlide initSlide', function () { // d3.resolve(); }); }); d3.done(function () { // alert('done'); first.attr('style', ''); second.attr('style', ''); }); }); } }; })(); $(document).ready(function() { gsapInit.init(); }); |
Часовой пояс GMT +3, время: 21:45. |