Skip to content
Super lightweight and awesome vanilla javascript parallax library
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE
README.md
package.json
scrollar.js
scrollar.min.js

README.md

SCROLLAR

NPM

Scrollar is a super lightweight and awesome vanilla javascript parallax library.

Why use Scrollar?

Scrollar focuses on the ***original position*** of elements unlike many other parallax libraries.

If you use other libraries, parallax elements often **disappear** out of its original place and you have to manually adjust the position to make the elements appear in the place you want.

However, with Scrollar, all elements will smoothly scroll according to its original position so that you **DON'T** have to worry about manual positioning or other screen supports.

Contents

by Park Jong Won

Install

Old school like me - Download and insert

<script src="path/to/scrollar.min.js"></script>

or use CDN

<script src="https://cdn.jsdelivr.net/npm/scrollar/scrollar.min.js"></script>

or use NPM

npm install scrollar --save

Getting Started

<div class="scrollar">
  I am moving at the default speed of 0.6px per 1px of scrolling
</div>
<div class="scrollar" data-scrollar-speed="2">
  I am super fast! -- 2px per 1px of scrolling
</div>
<div class="scrollar" data-scrollar-speed="-4">
  I am super slow! -- 0.2px per 1px of scrolling
</div>

<script src="scrollar.min.js"></script>
<script>
  // Accepts any class name (default is ".scrollar")
  var scrollar = new Scrollar(".scrollar");
</script>

Also with optional settings

<script>
  var scrollar = new Scrollar(".scrollar", {
    speed: 0.6,
    wrapper: null,
    distance: 1000,
    vertical: true,
    callback: null,
  });
</script>

Options

* Future options

Option Explanation Accepted
speed How much pixel per user scrolled pixel should the parallax element be moved.

DEFAULT: 0.6 px
number (px)
wrapper The parent element of the parallax element. Used to evaluate offset top and align the parallax element according to the wrapper.

DEFAULT: null (document)
any class name
distance The distance in px before the parallax element pauses. Prevents unnecessary parallax scrolling once out of the designated area.

DEFAULT: 1000 px
number (px)
ǂ vertical Should vertical parallax scrolling be activated.

DEFAULT: true
boolean
ǂ *horizontal Should horizontal parallax scrolling be activated.

DEFAULT: false
boolean
callback Function to be called when any of the parallax element is moved.

PARAMETERS: none
function

ǂ Only one can be true

More Info on Options

speed

The scrolling speed (in px) of the parallax element per user scrolled px. In other words, the speed represents how much the element should move when the user scrolls 1px.

License

MIT License

Copyright (c) 2018 Park Jong Won

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

You can’t perform that action at this time.