Skip to content

ninjabonsai/motion-scroll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

motion-scroll

scroll to a position or an element with easing

Installation

npm install motion-scroll es6-easing

es6 easing documentation can be found here..
https://github.com/ninjabonsai/es6-easing

Basic usage

scroll to top of page

import MotionScroll from 'motion-scroll';
import { easeInQuadOutExpo } from 'es6-easing';

// scrolls to the top of the page at 2000px per second easing out
MotionScroll.scroll( {
    scrollTo: 0,
    speed: 2000,
    easing: easeInQuadOutExpo,
} );

scroll to a child element's position

MotionScroll.scroll( {
    scrollTo: document.querySelector( '#foo' ),
} );

scroll an element instead of the window

MotionScroll.scroll( {
    element: document.querySelector( '#bar' ),
} );

Config defaults

MotionScroll.scroll( {
    element: document.documentElement, // element to scroll
    axis: 'y', // scroll on the x or y axis ie- horizontal or vertical scrolling
    scrollTo: 0, // number or dom element
    speed: 2000, // speed in pixels per second
    easing: null, // if no easing function is provided animation will be linear
    callBack: null, // function to call when scrolling is complete
    delay: 0, // delay in seconds until scrolling begins
    force: false, // prevent mousewheel interaction from cancelling scroll
    minScrollTime: 0, // in seconds
    maxScrollTime: 10, // in seconds
} );

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published