2017-06-22 105 views
1

我想改进一个现有的代码,允许我在加载页面后显示导航栏,并在用户向下滚动后消失。我想让用户每滚动一次,导航栏就会出现。基本上,我需要一个Headroom plugin,但作为一个纯粹的JavaScript。我会考虑任何其他简单的选择。滚动时隐藏和显示导航栏

这是一些HTML和JavaScript本身:

//hide and show navbar when scrolled <100px 
 
(function($) { 
 
    $(document).ready(function() { 
 

 
    // hide .navbar first 
 
    $(".navbar").show(); 
 

 
    // fade in .navbar 
 
    $(function() { 
 
     $(window).scroll(function() { 
 
     // set distance user needs to scroll before we fadeIn navbar 
 
     if ($(this).scrollTop() > 100) { 
 
      $('.navbar').fadeOut(); 
 
     } else { 
 
      $('.navbar').fadeIn(); 
 
     } 
 
     }); 
 

 

 
    }); 
 

 
    }); 
 
}(jQuery));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" /> 
 
<header class="nav-down"> 
 
    <nav class="navbar navbar-default navbar-fixed-top container-fluid" id="navbar-exe" role="navigation"> 
 
    <div class="container"> 
 
     <div class="navbar-header"> 
 
     <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse-2"> 
 
\t \t \t \t \t <span class="sr-only">Toggle navigation</span> 
 
\t \t \t \t \t <span class="icon-bar"></span> 
 
\t \t \t \t \t <span class="icon-bar"></span> 
 
\t \t \t \t \t <span class="icon-bar"></span> 
 
\t \t \t \t </button> 
 
     <a class="navbar-brand logo page-scroll text-muted" href="#Home">VAYNER<span class="medialogo">MEDIA</span></a> 
 
     </div> 
 
     <div class="collapse navbar-collapse " id="navbar-collapse-2"> 
 
     <ul class="nav navbar-nav navbar-right"> 
 
      <li><a href="#About" class="page-scroll">About</a></li> 
 
      <li><a href="#Services" class="page-scroll">Contact</a></li> 
 

 
     </ul> 
 
     </div> 
 
     <!-- /.navbar-collapse --> 
 
    </div> 
 
    <!-- /.container --> 
 
    </nav> 
 
    <!-- /.navbar --> 
 
</header>

+0

是否有通过你的JavaScript创建净空CSS的问题?编辑:添加HTML'