Skip to content

Promo/scrollissimo

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

Vladimir Kudinov 0.7.0
4100062

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
January 16, 2017 20:23
src
January 16, 2017 20:23
January 16, 2017 20:23
February 13, 2016 20:56
January 16, 2017 20:15
February 13, 2016 20:56
January 19, 2017 13:04
February 13, 2016 20:59
January 19, 2017 13:04
January 16, 2017 20:23
January 19, 2017 13:10

Scrollissimo

Build Status

Javascript plugin for smooth scroll-controlled animations

Scrollissimo animates Greensock's tweens and timelines on user's scroll.

Comparing Scrollissimo and another usual plugins here.

Get started

Download

Scrollissimo is available for downloading from repository. Also npm users can install Scrollissimo by command:

npm install scrollissimo

Connect

The first step you need is to include Greensock:

    <script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/latest/TweenLite.min.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/latest/TimelineLite.min.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/latest/plugins/CSSPlugin.min.js"></script>

... or just:

    <script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/latest/TweenMax.min.js"></script>

... and Scrollissimo of course:

    <script src="scrollissimo/dist/scrollissimo.min.js"></script>

Next we will trigger scrollissimo on each scroll event:

<script>
    $(document).ready(function(){
        $(window).scroll(function(){
            scrollissimo.knock();
        });
    });
</script>

NOTE: for touch devices support you must also attach scrollissimo.touch.min.js.

Now lets animate something!

Let we have a div called Divy:

<div id="Divy"></div>
#Divy{
    position: fixed;
    top: 0;
    left: 0;
    
    height: 50px;
    width: 50px;
    
    background: red;
}

Now we will animate Divy's width. At the begining of page its width will be equal to 50px. And as we scroll its width will be grow up to 300px after we have scrolled for 1000 pixels. The first let's create Grensock's tween.

TweenLite.to(element:object, durationInPixels: number, params: object);

more in Greensock`s documentation

var divyTween = TweenLite.to(document.getElementById('Divy'), 1000, { width: 300 });

NOTE: As you see it`s usual Greensock`s Tween except of duration of animation ***must be specified in pixels not in seconds.

Then we need to add this tween to Scrollissimo.

scrollissimo.add(<Tween|Timeline>, <StartPixels>, <MaxSpeed>);

The second argument is start scroll value in pixels. The third argument is a maximal value of changing scrollTop.

scrollissimo.add(divyTween, 0, 25);

That is all you need to do to make a simple animation.

Animating timelines is similar to tween`s animating.