aboutsummaryrefslogtreecommitdiff
path: root/public/js/app.js
diff options
context:
space:
mode:
authorThedro Neely <thedroneely@gmail.com>2019-08-09 04:39:23 -0400
committerThedro Neely <thedroneely@gmail.com>2019-08-09 04:39:23 -0400
commitd89f3425a8759ebed6710ed3c524f2add4e90d9b (patch)
treed4e56b2af7be78f740e3fc1d72b79ef2c473c525 /public/js/app.js
parent12f912164b67683af296b4d2d10db347ae7e4a2e (diff)
downloadthedroneely.com-d89f3425a8759ebed6710ed3c524f2add4e90d9b.tar.gz
thedroneely.com-d89f3425a8759ebed6710ed3c524f2add4e90d9b.tar.bz2
thedroneely.com-d89f3425a8759ebed6710ed3c524f2add4e90d9b.zip
public/js/app: Add feedback resistance and ignore first scroll on pageload
Diffstat (limited to 'public/js/app.js')
-rw-r--r--public/js/app.js16
1 files changed, 10 insertions, 6 deletions
diff --git a/public/js/app.js b/public/js/app.js
index 94d5912..f3fa6bc 100644
--- a/public/js/app.js
+++ b/public/js/app.js
@@ -87,7 +87,7 @@ window.history.replaceState(null, null, url);
var previousPosition = window.pageYOffset;
var navbar = document.getElementById("navbar");
var navbarHeight = navbar.offsetHeight;
-
+var scrollReady = 0;
window.onscroll = function() {
@@ -98,14 +98,18 @@ window.onscroll = function() {
var currentPosition = window.pageYOffset;
var velocity = previousPosition - currentPosition;
- if (velocity > 55 || currentPosition < navbarHeight) {
- remClass(navbar, 'navbar__headroom');
- } else if (velocity < 0) {
- addClass(navbar, 'navbar__headroom');
+ if (scrollReady == 1) {
+ if (velocity > 75 || currentPosition < navbarHeight) {
+ remClass(navbar, 'navbar__headroom');
+ } else if (velocity < -25) {
+ addClass(navbar, 'navbar__headroom');
+ } else if (currentPosition > navbarHeight) {
+ runOnce(function () { addClass(navbar, 'navbar__headroom') });
+ }
}
previousPosition = currentPosition;
-
+ scrollReady = 1;
};
/**