下スクロールで消えて、上スクロールで再表示する
ヘッダーメニューをjQueryで実装します。
HTMLを
<div class="header">
<div class="menu">
<div class="inner">sample text</div>
</div>
</div>
CSSを
.menu {
width: 100%;
height: 50px;
position: fixed;
left: 0;
top: 0;
transition: 1s;
}
.menu.hide {
transform: translateY(-50px);
}
50pxの高さのメニューを50px上に移動させて隠す、という動きにしています。
jQueryを
$(function() {
var pos = 0;
var header = $('.menu');
$(window).on('scroll', function() {
if ($(this).scrollTop() < pos) {
header.removeClass('hide');
}
else {
header.addClass('hide');
}
pos = $(this).scrollTop();
});
});
下スクロールでhide
を付けて隠し、上スクロールでhide
を削除して再表示するという挙動にしています。
参考:https://www.esz.co.jp/blog/2885.html
【jQuery参考書】
■初級・入門向け
10日でおぼえるjQuery入門教室 第2版
■初級・入門向け
10日でおぼえるjQuery入門教室 第2版
■中級・実務向け
jQueryポケットリファレンス (POCKET REFERENCE)
■上級・開発向け
jQueryクックブック(オライリー)