如何实现向下隐藏添加类.hidenav,向上显示添加类.shownav ,回到顶部移除掉两个类.shownav .hidenav

nav.jpg

JQ导航如何实现向下隐藏添加类.hidenav,向上显示添加类.shownav ,回到顶部移除掉两个类.shownav .hidenav

阅读 1.7k
1 个回答
<!DOCTYPE  html\>
<html  lang\="en"\>
<head\>
<meta  charset\="UTF-8"  />
<meta  name\="viewport"  content\="width=device-width, initial-scale=1.0"  />
<meta  http-equiv\="X-UA-Compatible"  content\="ie=edge"  />
<title\>Document</title\>
<style\>
.box {
height: 2600px;
}
#nav {
position: fixed;
top: 0;
width: 100%;
height: 100px;
background: #aaa;
transition: all  0.5s  linear;
}
.hidenav {
opacity: 0;
}
.shownav {
opacity: 1;
}
</style\>
</head\>
<body\>
<div  class\="box"\>
<nav  id\="nav"\>
nav..
</nav\>
</div\>
<script\>
let  tempNum = 0;
const  nav = document.getElementById("nav");
document.addEventListener("scroll", e  \=> {
let  scrollTop =
document.body.scrollTop || document.documentElement.scrollTop;
if (scrollTop === 0) {
nav.classList.remove("shownav", "hidenav");
} else  if (scrollTop < tempNum) {
nav.classList.add("shownav");
nav.classList.remove("hidenav");
} else  if (scrollTop > 0) {
nav.classList.remove("shownav");
nav.classList.add("hidenav");
}
tempNum = scrollTop;
});
</script\>
</body\>
</html\>

注意节流

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题