From f224f51738d7f569babc5158a54c90a60ea90b63 Mon Sep 17 00:00:00 2001 From: Amir Date: Sun, 15 Sep 2024 05:15:00 +0200 Subject: [PATCH] fixed header iphone scroll bounce --- templates/base.html | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/templates/base.html b/templates/base.html index be88fb07..e63e92fd 100644 --- a/templates/base.html +++ b/templates/base.html @@ -64,21 +64,25 @@ }); }) //header - var prevScrollPos = window.pageYOffset; - - window.onscroll = function() { - var currentScrollPos = window.pageYOffset; - - if (prevScrollPos + 15 < currentScrollPos) { - document.getElementById("header").classList.add("header-hidden"); - document.getElementById("header").classList.remove("header-visible"); - } - else { - document.getElementById("header").classList.add("header-visible"); - document.getElementById("header").classList.remove("header-hidden"); - } - prevScrollPos = currentScrollPos; + var prevScrollPos = window.pageYOffset; + var isTouchDevice = 'ontouchstart' in document.documentElement; + + window.onscroll = function() { + var currentScrollPos = window.pageYOffset; + + var scrollSensitivity = isTouchDevice ? 25 : 15; + + if (prevScrollPos + scrollSensitivity < currentScrollPos) { + document.getElementById("header").classList.add("header-hidden"); + document.getElementById("header").classList.remove("header-visible"); + } else { + document.getElementById("header").classList.add("header-visible"); + document.getElementById("header").classList.remove("header-hidden"); + } + + prevScrollPos = currentScrollPos; }; +