## Scroll Property

The component that animates the vertical scrolling of a target Element as well as the <window> on most browsers.

### Overview

The fully reworked component for vertical scrolling animation is an essential part of KUTE.js.

The KUTE.js Scroll Property component enables animation for the vertical scroll of a target Element or the <window> on most browsers.

The vertical scrollling animation is a popular choice to spice up the in-page navigation, and most websites use a Back To Top button for scrolling all the way back to top. For this reason, our component doesn't support horizontal scrolling animation.

The component also uses passive event option for best possible performance along with other improvements like removed the need to use additional CSS or the use of data-scrolling attribute on the <body> element.

On animation start, the component will lock down all possible pointer events of the animation target to avoid any unwanted animation glitches.

### Example

    // all websites to top button
    KUTE.to(window,{scroll:0}).start()

    // scroll to a certain element
    KUTE.to(window,{scroll: document.getElementById('myElement').offsetTop }).start()

    // scroll to top an overflowing target element
    KUTE.to('#myElement',{scroll: 0 }).start()

#### KUTE.js Scroll Property

Leverage agile frameworks to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment.

Bring to the table win-win survival strategies to ensure proactive domination. At the end of the day, going forward, a new normal that has evolved from generation X is on the runway heading towards a streamlined cloud solution. User generated content in real-time will have multiple touchpoints for offshoring.

Capitalize on low hanging fruit to identify a ballpark value added activity to beta test. Override the digital divide with additional clickthroughs from DevOps. Nanotechnology immersion along the information highway will close the loop on focusing solely on the bottom line.

#### Second Sample Heading

Podcasting operational change management inside of workflows to establish a framework. Taking seamless key performance indicators offline to maximise the long tail. Keeping your eye on the ball while performing a deep dive on the start-up mentality to derive convergence on cross-platform integration.

Collaboratively administrate empowered markets via plug-and-play networks. Dynamically procrastinate B2C users after installed base benefits. Dramatically visualize customer directed convergence without revolutionary ROI.

Toggle

#### scroll-behavior: smooth

Leverage agile frameworks to provide a robust synopsis for high level overviews. Iterative approaches to corporate strategy foster collaborative thinking to further the overall value proposition. Organically grow the holistic world view of disruptive innovation via workplace diversity and empowerment.

Bring to the table win-win survival strategies to ensure proactive domination. At the end of the day, going forward, a new normal that has evolved from generation X is on the runway heading towards a streamlined cloud solution. User generated content in real-time will have multiple touchpoints for offshoring.

Capitalize on low hanging fruit to identify a ballpark value added activity to beta test. Override the digital divide with additional clickthroughs from DevOps. Nanotechnology immersion along the information highway will close the loop on focusing solely on the bottom line.

#### Second Sample Heading

Podcasting operational change management inside of workflows to establish a framework. Taking seamless key performance indicators offline to maximise the long tail. Keeping your eye on the ball while performing a deep dive on the start-up mentality to derive convergence on cross-platform integration.

Collaboratively administrate empowered markets via plug-and-play networks. Dynamically procrastinate B2C users after installed base benefits. Dramatically visualize customer directed convergence without revolutionary ROI.

Bottom
Top

The above shows a comparison of the Scroll Property component with the `scroll-behavior: smooth` CSS; while this browser feature shows excellent performance it lacks the flexibility and support for legacy browsers.

### Notes

- The Scroll Property component will lock down any pointer event such as click, touch, or any other event of the target on animation start to prevent any kind of animation glitches, so make sure to filter your tweens, perhaps you can take a look at the scrollProperty.js sample code.
- The scroll animation is not as smooth as with transform animations, it has no access at sub-pixel level, but you can play around with various easing functions and durations to find the best possible outcome.
- All pages in this documentation have a `<a>Back to top</a>` button at the bottom, just in case you didn't notice, but only on this page `scrollProperty` component is used.
- The component is only bundled with the demo/src/kute-extra.js file and not in the official build. That is thanks to `scroll-behavior`, but you can include this component in your custom builds to enable scrolling for legacy browsers.