Skip to content

Small, smooth, speed-driven and stoppable scrolling to an element or a position, inside the viewport or a parent element.

License

Notifications You must be signed in to change notification settings

pecuchet/go-scroll-to

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go-scroll-to 2

A fast and lightweight (±595B gzipped) javascript module to smoothly scrollTo. It scrolls by speed instead of duration, to a position or an element, within the window or any scrollable parent element. And it's stoppable. And aside from a modern browser, it's dependency free.

!important

go-scroll-to has been rewritten to an ES6 module. If you still need support for older browsers use version 1.0.3 (npm install go-scroll-to@^1.0.3)

Features

  • Scroll the window or any scrollable element
  • Scroll by speed: the duration is relative to the distance
  • Stop when the user manually scrolls (i.e. 'mouse wheels' or 'touch starts')
  • Sets an 'auto-scrolling' class name on the body element
  • Scroll to top, to a specific position or to an element
  • Offset the target position
  • Touch compatible

Examples

Scroll to top

goScroll();

Scroll to position inside a scrollable element

goScroll({
    to: 300,
    context: document.getElementById('scrollable')
    });

Scroll slowly to element inside a scrollable element

goScroll({
    to: document.getElementById('element'),
    speed: .3,
    context: document.getElementById('scrollable')
    });

Install through npm

npm install go-scroll-to

for version 1: npm install go-scroll-to@^1.0.3

All Options

to: HTMLElement or Number. Default: 0
offset: Number, offset the target position. Default: 0
context: HTMLElement. Default: window
speed: Float greater than 0, higher is faster. Default: 2
callback: Function, triggered when target is reached or when the user interrupts the animation. The callback receives one argument, which will be 1 if the target position was reached. Default: undefined

License

Apache 2.0

About

Small, smooth, speed-driven and stoppable scrolling to an element or a position, inside the viewport or a parent element.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published