motion-scroll
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/motion-scroll package

1.0.7 • Public • Published

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
} );

Package Sidebar

Install

npm i motion-scroll

Weekly Downloads

1,070

Version

1.0.7

License

MIT

Unpacked Size

10.5 kB

Total Files

5

Last publish

Collaborators

  • shunryu111