Scroll
Scroll smoothly when jumping to different sections on a page.
Usage
Simply add the uk-scroll attribute to any page-internal link that contains a URL fragment to add the smooth scrolling behavior.
<a href="#my-id" uk-scroll></a>
<a class="uk-button uk-button-primary" href="#target" uk-scroll>Scroll down</a>
Callback after scroll
To receive a callback when scrolling has completed, you can listen to the scrolled event on the link element that triggered the scrolling.
<a id="js-scroll-trigger" href="#my-id" uk-scroll></a>
UIkit.util.on('#js-scroll-trigger', 'scrolled', function () {
alert('Done.');
});
<a id="js-scroll-trigger" class="uk-button uk-button-primary" href="#target" uk-scroll>Down with callback</a>
<script>
UIkit.util.on('#js-scroll-trigger', 'scrolled', function () {
alert('Done.');
});
</script>
Component options
Any of these options can be applied to the component attribute. Separate multiple options with a semicolon. Learn more
| Option | Value | Default | Description |
|---|---|---|---|
offset |
Number | 0 |
Pixel offset added to scroll top. |
JavaScript
Learn more about JavaScript components.
Initialization
UIkit.scroll(element, options);
Events
The following events will be triggered on elements with this component attached:
| Name | Description |
|---|---|
beforescroll |
Fires before scroll begins. Can prevent scrolling by calling preventDefault() on the event. |
scrolled |
Fires after scrolling is finished. |
Methods
The following methods are available for the component:
ScrollTo
UIkit.scroll(element).scrollTo(el);
Scroll to the given element.
| Name | Type | Default | Description |
|---|---|---|---|
el |
Node, Selector | undefined | The element to scroll to. |