forked from jonyablonski/javascript-toolbox
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathreverseHeader.js
More file actions
29 lines (23 loc) · 768 Bytes
/
reverseHeader.js
File metadata and controls
29 lines (23 loc) · 768 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
var header = document.getElementById('js-header'),
distanceY = window.pageYOffset || document.documentElement.scrollTop,
scrollThresh = 300,
headerReversedClass = 'is-reversed';
var onScroll = throttle(function() {
distanceY = window.pageYOffset || document.documentElement.scrollTop;
reverseHeader();
}, 50);
/**
* Reverse header 'state' by checking scroll distance
*/
var reverseHeader = function() {
if (distanceY > scrollThresh) {
if (!body.classList.contains(toggledNavClass)) {
header.classList.add(headerReversedClass);
}
} else {
if (header.classList.contains(headerReversedClass)) {
header.classList.remove(headerReversedClass);
}
}
};
window.addEventListener('scroll', onScroll, false);