Package Exports
- react-scroll-into-view
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-scroll-into-view) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
React scroll-into-view
Fast & declarative way for scrolling to any element on page. Weights only ~450 B minified + gzipped
Idea behind
While developing landing page we needed way to scroll page to focus on registration form. It was obvious we will use element.scrollIntoView we just need find nice way how to. This is just simple React element that provides declarative way to scroll to any element on page when it's clicked.
Demo
Check out that codesandbox example
Installation
yarn add react-scroll-into-viewor if you use npm:
npm i --save react-scroll-into-viewHow to use
First import it
import ScrollIntoView from 'react-scroll-into-view'Then use it
<ScrollIntoView selector="#footer">
<button className="mdl-button mdl-js-button mdl-button--raised">
Jump to bottom
</button>
</ScrollIntoView>
<!-- somewhere down on our page we have our target element -->
<div id="footer">Scroll target element</div>Props
| Name | Type | Default | Description |
|---|---|---|---|
| selector | String | Required. Valid CSS Selector to element to which we want to scroll | |
| smooth | Boolean | true | Scroll behaviour; when true - transition animation will be smooth. Otherwise instant. |
| style | Object | {} | CSS styles passed to element NOTE prior v1.4.0 default value was {display: 'inline'} |
| alignToTop | Boolean | false | Whether top of the element should be aligned to the top of the visible area. Default: aligns to bottom of element |
| className | String | Optional class name to be applied to element | |
| onClick | Function | Callback fired on click |
Changelog
Please check releases tab for full details
TODO
- support for all element.scrollIntoView parameters