Smooth scrolls to element of the specified selector or element reference with optional offset, scroll-positon, easing, and duration. Takes into account document height for elements low on the page.
Add an additional offset to the final position. if > 0 then page is moved to the bottom otherwise the page is moved to the top.
Alignment of the element in the resulting viewport. Can be one of
'top','middle'or'bottom'. Defaulting to'top'.
Easing function defaulting to "out-circ" (view ease for more)
Animation duration defaulting to
1000
scrollToElement emits an
endevent when the scroll animation is complete, and can be optionally consumed to perform a callback.
var scrollToElement = require('scroll-to-element');
scrollToElement('#id');
// with options
scrollToElement('.className', {
offset: 0,
ease: 'out-bounce',
duration: 1500
}).on('end', () => {
console.log('Done scrolling!');
});
// or if you already have a reference to the element
var elem = document.querySelector('.className');
scrollToElement(elem, {
offset: 0,
ease: 'out-bounce',
duration: 1500
});MIT
