ScrollMagic
The javascript library for magical scroll interactions
...Animate based on scroll position, pin an element starting at a specific scroll position, toggle CSS classes of elements on and off based on scroll position, effortlessly add parallax effects to your website, create an infinitely scrolling page, add callbacks at specific scroll positions or while scrolling past a specific section. Either trigger an animation or synchronize it to the scrollbar movement (like a playback scrub control). Pin an element starting at a specific scroll position, either indefinitely or for a limited amount of scroll progress (sticky elements). You can add callbacks at specific scroll positions or while scrolling past a specific section, passing a progress parameter.