1.2.1 • Published 3 years ago

ezscroll v1.2.1

Weekly downloads
4
License
MIT
Repository
github
Last release
3 years ago

ezscroll

A useful tool that helps you to scroll in the browser window with animation. Time to give up window.scrollTo!

Installation

Via npm.

$ npm install ezscroll --save

Via yarn.

$ yarn add ezscroll

Basic Usage

Window scroll

You can simply replace all of your window.scrollTo with ezscroll.

import { scrollTo } from 'ezscroll';

// Same usage as window.scrollTo.
// But will scroll with animation.
scrollTo(0, 0);

Element scroll

You can also scroll inside your element.

import { elScrollTo } from 'ezscroll';

// `element` should be a container element.
elScrollTo(element, 0, 0);

Useful functions

For window scroll

We provide some useful functions which we think are in common use.

import { scrollToTop, scrollToLeft, scrollToRight, scrollToBottom } from 'ezscroll';

// Scroll to the top of the window.
scrollToTop();

// Scroll to the left of the window.
scrollToLeft();

// Scroll to the right of the window.
scrollToRight();

// Scroll to the bottom of the window.
scrollToBottom();

Or you may want some accurate control on one axis.

import { scrollXTo, scrollYTo } from 'ezscroll';

// Scroll to 10 on x axis.
scrollXTo(10);

// Scroll to 50 on y axis.
scrollYTo(50);

All functions above support customize duration and easing functions. For more details please refer to Full API.

import { scrollToTop, scrollXTo } from 'ezscroll';

scrollToTop(duration, easing, callback);
scrollXTo(x, duration, easing, callback);

For element scroll

Similar as above.

import {
  elScrollToTop,
  elScrollToLeft,
  elScrollToRight,
  elScrollToBottom,
  elScrollXTo,
  elScrollYTo,
} from 'ezscroll';

elScrollToTop(element, duration, easing, callback);
elScrollXTo(element, 0, duration, easing, callback);

Full API

Core

scrollTo(x, y, duration, easing, callback);
  • x: Target scroll position on x axis.
  • y: Target scroll position on y axis.
  • duration: Animation duration (in ms).
  • easing: Easing function that control the animation.
  • callback: Callback function that will be fired after the scrolling animation.

Easing functions

Now we only provide some basic easing functions as below. You can customize your own easing function and pass it in.

import { Easing } from 'ezscroll';

easing = Easing.Linear;
easing = Easing.Cubic.In;
easing = Easing.Cubic.Out;
easing = Easing.Cubic.InOut;

We use Easing.Cubic.InOut by default.

License

MIT

Copyright © hueyhe

1.2.1

3 years ago

1.2.0

6 years ago

1.1.4

6 years ago

1.1.2

6 years ago

1.1.0

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago