Javascript

【Javascript】スクロールダウンとアップの動きを検出し、ナビを表示させたり、隠したりするJet Movement

January 1, 2017
jm

Jet Movementはスクロールダウンすると自動的にウェブサイトのナビゲーションバーを隠し、スクロールアップすると表示させる。

Introduction

import jm from 'jetmovement'

// when you scroll the page up it excutes the function `fn`
jm.scrollUp(fn)

// when you scroll the page down it excutes the function `fn`
jm.scrollDown(fn)

HTML

<header class="header">
  <h1>Jet Movement</h1>
</header>

CSS

.header {
  height: 50px;
  background-color: #fff;
  border-bottom: 1px solid #e2e2e2;
  line-height: 50px;
  text-align: center;
  transform: translateY(0);
  transition: transform .3s ease;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
.hidden-header {
  transform: translateY(-100%);
}

JavaScript

const header = document.querySelector('.header')
jm.navbarHeight = header.clientHeight

jm.scrollDown(() => {
  header.classList.add('hidden-header')
})

jm.scrollUp(() => {
  header.classList.remove('hidden-header')
})

MIT
Demo/Download