motion-scroll
v1.0.7
Published
scroll to an element or a position with easing
Downloads
6,458
Maintainers
Readme
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
} );