Waypoints

Waypoints

Waypoints provide a convenient to automatically scroll to content on a page. They also provide the ability to land at a particular element on page load via the URL hash.



Usage

To setup a click-to-scroll event, simply add the .js-waypoint-trigger class to a clickable element and provide the id of target element as the data-waypoint-target attribute.

Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.

<div class="fbx-snippet-demo">
    <button class="btn btn-primary js-waypoint-trigger" data-waypoint-target="scroll-target">Scroll To Content</button>
    <div id="scroll-target">
        ...
    </div>
</div>

Additionally, you can invoke smooth-scrolling to an element on page load by adding the class .js-waypoint to any element with an id. For example, http://example.com#landhere on page-load would scroll to the element. Try the example below:

Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.

<div id="landhere" class="js-waypoint">
   ...
</div>

Options

You can specify the the animation speed as well as the animation easing via HTML data- attributes on both the click-target and landing elements. The table below outlines possible options:

Attribute Example Description
data-waypoint-target data-waypoint-target="my-id" Target element id.
data-waypoint-speed data-waypoint-speed="1000" Scroll animation speed in milliseconds.
data-waypoint-easing data-waypoint-easing="easeInOut Scroll animation easing in camelCase.
data-waypoint-update-url data-waypoint-update-url="false" Update the URL hash.