Fork me on GitHub

Overflow Scroller

Carousel Example:

Gallery Example:

Overflow Scroller is a simple package of CSS and javascript that harnesses the simple overflow: auto behavior allowing for swipeability at mobile and on touch enabled devices (trackpads, magic mouse). CSS Snap points optionally enhance it for Safari (Desktop &: mobile), Firefox, and IE/Edge users. Previous and next arrows are added that control the scrolling for non-touch and desktop users.

dependencies

You can download Overflow Scroller here. There are a couple dependencies, it will work fine without them but it provides a better experience & performance if they are added.

Getting started

Overflow scroller only requires a simple set of items in a div to get started, the use the css the containing div should have a class name of overflow-scroller

The Markup

The HTML is pretty simple. A div with a collection of items that are ideally all the same height.

      <div class="overflow-scroller">
      <div class="child-item">...</div>
      <div class="child-item">...</div>
      <div class="child-item">...</div>
      ....
      </div>
    

The Script

Overflow scroller is written as a jQuery plugin, there are a few options you can pass to it as well.

      <script> 
      $('.overflow-scroller').overflowScroller();

      //passing options
      $('.overflow-scroller').overflowScroller({
      scrollPercentage: .9,
      scrollSpeed: 400,
      snapPoints: false
    });
    </script>
  

The Styles

Feel free to overwrite the styles to your liking. There is a provided .less file and .css file. We use the less file to build the css file.

Note: all child elements must have a width declared in CSS. The width can be a fixed pixel value or a % width of the container.

Before creating a pull request make sure to edit the .less file and then run:lessc overflow-scroller.less overflow-scroller.css