From df3b97b6594457d5899ba3be9f25f3a17de6cecd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=89=A7=E4=B8=AD=E4=BA=BA?= Date: Sat, 11 Nov 2017 23:49:10 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=AF=BC=E8=88=AA=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E9=80=BB=E8=BE=91=EF=BC=8C=E9=80=9A=E8=BF=87=E9=BC=A0?= =?UTF-8?q?=E6=A0=87=E4=BD=8D=E7=BD=AE=E9=A2=84=E5=88=A4=E5=8C=BA=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontEnd/single-page/src/js/navigation.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/frontEnd/single-page/src/js/navigation.js b/frontEnd/single-page/src/js/navigation.js index 0ed1e9f07..dd2567cec 100644 --- a/frontEnd/single-page/src/js/navigation.js +++ b/frontEnd/single-page/src/js/navigation.js @@ -50,12 +50,11 @@ function init () { let isDarkened = false; let darkenClassName = 'darken'; let useMethod; - let lastScrollTop = 0; + let scrollTop = 0; + let mouseY = 1000; function fixNavClass () { - let scrollTop = getScrollTop(); - let isNeedDarken = scrollTop > distance; - // let isNeedDarken = lastScrollTop > scrollTop && scrollTop > distance; + let isNeedDarken = mouseY < 200 || scrollTop > distance; let isNeedChange = isNeedDarken !== isDarkened; if (isNeedChange) { isDarkened = isNeedDarken; @@ -63,14 +62,18 @@ function init () { utils[useMethod](nodeNav, darkenClassName); } - lastScrollTop = scrollTop; } window.onscroll = function () { + scrollTop = getScrollTop(); fixNavClass(); clearTimeout(scrollDelay); scrollDelay = setTimeout(checkBackTop, 100); }; + window.onmousemove = function (e) { + mouseY = e.clientY; + fixNavClass(); + }; utils.bind(nodeBackTop, 'click', function () { nodeBody.scrollTop = 0; });