Jump to content
GreenSock

Search the Community

Showing results for tags 'gsap jquery'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • GreenSock Forums
    • GSAP
    • Banner Animation
    • Jobs & Freelance
  • Flash / ActionScript Archive
    • GSAP (Flash)
    • Loading (Flash)
    • TransformManager (Flash)

Product Groups

  • Club GreenSock
  • TransformManager
  • Supercharge

Categories

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Personal Website


Twitter


CodePen


Company Website


Location


Interests

Found 1 result

  1. hello. I need help with the numbered navigation on this codepen (http://deleted) . Each prev/next slide animation has onStart function call that play a sliding animation from an array using a currentIndex value to play the right timeline. It works ok if a user clicks in numerical order. But when clicking the numbered navigation I dont think the correct currentIndex values are being passed to the timelines. /* * If there's a previous slide, slide to it * */ function goToPrevSlide(slideOut, slideIn) { var tl = new TimelineMax(), index = slideIn.next().index(), size = $('.slide').length; currentIndex = index; console.log('gotoPrevSlide currentIndex =' + +currentIndex); if (slideIn.length !== 0) { tl // move the new slide (the one about to enter viewport) out of the viewport (to the top) .set(slideIn, { autoAlpha: 1, className: '+=active' }) // remove class active from the currently active slide (slideOut) .set(slideOut, { className: '-=active' }) // animate active slide down (out of the viewport) .to(slideOut, time * 4, { y: '100%', ease: Power3.easeInOut, onStart: onSlideStartedReverse, onStartScope: this }, 0) // animate new slide down (from out of the viewport) // .to(slideIn, 0.5, {y: '+=100%', ease:Power3.easeInOut}, '-=0.5') } // Fade in arrow up TweenLite.set($slideNavNext, { autoAlpha: 1 }); // Fade out arrow down on first slide if (index === 1) { TweenLite.to($slideNavPrev, 0.3, { autoAlpha: 0.2, ease: Linear.easeNone }); } } // Navigation click - go to the Previous Slide $slideNavPrev.click(function(e) { e.preventDefault(); var slideOut = $('.slide.active'), slideIn = $('.slide.active').prev('.slide'); goToPrevSlide(slideOut, slideIn); }); /* * If there's a next slide, slide to it * */ function goToNextSlide(slideOut, slideIn) { var tl = new TimelineMax(), index = slideIn.index(), size = $('.slide').length; currentIndex = index; console.log('gotoNextSlide index =' + +currentIndex); if (slideIn.length !== 0) { tl .set(slideIn, { y: '100%', autoAlpha: 1, className: '+=active' }) .set(slideOut, { className: '-=active', position: 'fixed' }) // .to(slideOut, 0.5, {y: '-100%', ease:Power3.easeInOut}, 0) .to(slideIn, time * 3, { y: '-=100%', ease: Power3.easeInOut, onStart: onSlideStarted, onStartScope: this, onComplete: onSlideChangeEnd, onCompleteScope: this }, 0) // Fade in arrow down TweenLite.set($slideNavPrev, { autoAlpha: 1 }); // Fade out arrow up on last slide if (index === size) { TweenLite.to($slideNavNext, 0.3, { autoAlpha: 0.2, ease: Linear.easeNone}); } } } // Navigation click - go to the Next Slide $slideNavNext.click(function(e) { e.preventDefault(); var slideOut = $('.slide.active'), slideIn = $('.slide.active').next('.slide'); goToNextSlide(slideOut, slideIn); }); // ====== function onNavButtonClick(e) { e.preventDefault(); //The clicked button var $button = $(this), nextID = $button.data('index-number'), $slide = $($button.attr("href")), index = $slide.index(), slideOut = $('.slide.active'), currentID = slideOut.data('slide'), slideIn = $("[data-slide='" + nextID + "']"); currentIndex = index; console.log('onNavButtonClick index =' + +currentIndex); if(+nextID > +currentID) { goToNextSlide(slideOut, slideIn); } else { goToPrevSlide(slideOut, slideIn); } } // ======== function onSlideStarted() { // Play the timeline for the current slide slideInTLs[currentIndex].restart(); } function onSlideStartedReverse() { // Play the timeline for the current slide slideOutTLs[currentIndex].restart(); }
×