javascript - 如何使元素在向下滚动时消失并重新出现?

标签 javascript jquery html css

所以在我的网站上,我在顶部有一个横跨页面长度的固定栏,该栏是 h1。与之相连的是一个带有后退和主页按钮的迷你导航,位于其下方并且也是固定的。当您向下滚动时阅读页面内容时迷你导航会妨碍所以我想让导航在用户向下滚动时消失并且还可以通过将鼠标移到顶部/单击顶部来选择让它重新出现栏/在触摸屏上滑动顶部栏等。

我该怎么做呢?

这是 HTML:

<header class="mainHeader">
  <h1>Page Title</h1>
    <nav class="secondaryNav">
      <a href="home.htm"><img class="backButton" src="img/back2.png" alt="Back Button"></a>
      <a href="home.htm"><img class="homeButton" src="img/home.png" alt="Home Button"></a>
    </nav>
    <aside><p id="countdown"></p></aside>
</header>
<!-- end .mainHeader -->

还有 CSS:

.mainHeader h1 {
    position: fixed;
    top: 0;
    width: 100%;
    background: #ea594e;
    box-shadow: 0 0 3px 3px #888888;
    font-family: verdana;
    font-variant: small-caps;
    color: white;
    border-bottom: 1px solid black;
    margin: 0;
    padding-bottom: 0.5%;
    text-align: center;
}

.mainHeader .secondaryNav {
    background: #ffcda4;
    box-shadow: 0 3px 3px 1px #888888;
    border: 1px solid;
   border-top: none;
    width: 400px;
    position: fixed;
    top: 49px;
    left: 50%;
    margin-left: -200px;
    border-radius: 0 0 50px 50px;
    padding-top: 5px;
}

bar是h1,mini nav是secondaryNav

最佳答案

这个简单的代码可能会对您有所帮助。 <强> JSFIDDLE

 //Keep track of last scroll
          var lastScroll = 0;
          $(window).scroll(function(event){
              //Sets the current scroll position
              var st = $(this).scrollTop();
              //Determines up-or-down scrolling
              if (st > lastScroll){
//secondaryNav disappears when scrolled down
                $(".secondaryNav").css("display","none");
              } 
              else {
//secondaryNav disappears when scrolled up
               $(".secondaryNav").css("display","block");
              }
              //Updates scroll position
              lastScroll = st;
          });

关于javascript - 如何使元素在向下滚动时消失并重新出现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22841654/

相关文章:

javascript - 使用 JavaScript 的计时器库

javascript string - 删除 PHP 指令,只留下 HTML 元素

javascript - 在 javascript 中存储数组 for javascript

javascript - 在 javascript 中很难将焦点设置在新创建的对象上

javascript - 在pdf中使用jspdf.debug.js Wrap table head时

css - 由于 div 的末尾,小图像将在底部被截断

javascript - HTML5 音频 - 当另一个声音开始时停止当前播放

javascript - 从客户端 JavaScript 生成的站点生成静态 HTML

javascript - 如何将 fullcalendar addeventsource 与数组一起使用?

javascript - 点之间的空间和从上到下的动画