Headroom.js is a lightweight, high-performance JS widget (with no dependencies) that allows you to react to the user's scroll. The header on this site is a living example, it slides out of view when scrolling down and slides back in when scrolling up.
Headroom.js is available on npm. To install:
npm install headroom.js --save # or... yarn add headroom.js
A a universal build (suitable for script tags, CommonJS, and AMD) is available from unpkg.com:
For complete documentation please visit the headroom.js website.
After installing headroom.js
. The following JS will create and initialise a headroom instance:
import Headroom from "headroom.js"; // select your header or whatever element you wish const header = document.querySelector("header"); const headroom = new Headroom(header); headroom.init();
Then you can add the following CSS to your page:
.headroom { will-change: transform; transition: transform 200ms linear; } .headroom--pinned { transform: translateY(0%); } .headroom--unpinned { transform: translateY(-100%); }
You should now see your header slide in and out in response to the user's scroll.
Contributions are welcome. Please clearly explain the purpose of the PR and follow the current code style.
Issues can be resolved quickest if they are descriptive and include both a reduced test case and a set of steps to reproduce.
The following steps will get you setup to contribute changes to this repo:
git clone https://github.com/<your_github_username>/headroom.js.git cd headroom.js
npm
, so you should too.To build the project:
To start a watcher for building the project and running tests:
To run the test suite in headless mode:
Licensed under the MIT License.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4