Create Buttons for Horizontal Scrolling

Tutorial
March 20, 2023
3 min
Webflow Tutorial
Key points

In today's tutorial, we will demonstrate how, using Webflow and a small piece of code, we can add buttons to our project that enable horizontal scrolling.

Step 1: Overflow Auto

For this tutorial to work, it is essential that one of the elements on your page has an overflow set to auto, allowing for basic horizontal scrolling.

overflow-auto

Step 2: Create 2 Buttons (or Link Blocks)

In your section, you will need to insert two buttons (or link blocks). The first will allow scrolling to the left, and the second will allow scrolling to the right.

You can customize them as you wish.

We recommend adding a custom attribute aria-label to describe the buttons for the sake of web accessibility.

Step 3: Add IDs to the Buttons

For your left button (which scrolls to the left), you can add the following ID: slideLeft

For your right button (which scrolls to the right), you can add the following ID: slideRight

id button

Step 4: Add an ID to Your Horizontally Scrollable Element

It is necessary to add an ID to the element that has overflow set to auto. You can give it any ID you desire.

id section

Step 5: Insert Code into Your Page

You will now go to your page settings. In the "Before body Tag" section, simply copy and paste the following code (make sure to replace ID-element-scrollable with the ID you defined in step 4):

<script>
$('#slideRight').click(function() {
  $('#ID-element-scrollable').animate( { scrollLeft: '+=500' }, 1000);
});

$('#slideLeft').click(function() {
  $('#ID-element-scrollable').animate( { scrollLeft: '-=500' }, 1000);
});
</script>

You can manage the "length" of the scroll by modifying the values of 500, and you can control the duration of the animation by changing the values of 1000.

javascript code for horizontal scroll button

If you wish, you can also hide the scrollbar by adding the following code (make sure to replace class-name-scrollable-element with the name of the class you assigned to your horizontally scrollable element):

<style>
.nom-classe-element-scrollable::-webkit-scrollbar {
  height:0px;
}
</style>

Step 6: Publish Your Project to See the Results

The JavaScript code only works when the site is live. Therefore, you will need to publish your project to use this feature.

horizontal scrolling with buttons

And there you go, your new buttons now allow for horizontal scrolling (to the right or left) in your element.

Discover how to create a progress bar in Webflow!

Thibaut Legrand
Thibaut Legrand
Technical Solutions Architect & Webflow Expert

Suggested articles

Webflow Localization, Credial's Use Case
Documentation
Webflow

Webflow Localization: Practical Guide & Credial's Use Case

Webflow Localization: Practical Guide & Credial's Use Case
Visuel showcasing digidop.fr switching to digidop.com
News
Digidop

Digidop.fr is now Digidop.com

Digidop.fr is now Digidop.com
Photo of the Digidop team with the Digidop Logo 2024
News
Digidop

A Look Back at an Exceptional 2024 and Vision 2025

A Look Back at an Exceptional 2024 and Vision 2025

Want to turn your website into your most valuable asset?

Contact us today