导航栏始终显示在旋转木马

时间:2016-09-12 16:50:21

标签: javascript jquery html css twitter-bootstrap

我尝试过使用z-index,这样我的导航栏就会显示在我的旋转木马图像上......但无济于事。我认为它不起作用的原因是因为它不是静态的。

我设置它的方式是当用户向下滚动时,导航栏逐渐消失,当用户用户向上滚动时,导航栏逐渐出现。这是否干扰了z指数..我不确定。非常感谢任何帮助。

以下是我的 HTML FOR NAVBAR

<header class="nav-down">
<div class="navbar navbar-default navbar-fnt navbar-backgrnd center">
  <div class="container-fluid navbar-inner">
    <div class="navbar-header">
      <a class="navbar-brand" href="#">SMcD</a>
    </div>
    <ul class="nav navbar-nav">
      <li class="active"><a href="#">Photos</a></li>
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Me
        <span class="caret"></span></a>
        <ul class="dropdown-menu">
          <li><a href="#">Seanie Mc</a></li>
          <li><a href="#">Contact Me</a></li>
        </ul>
      </li>
      <li><a href="#">Blog</a></li>
    </ul>
  </div>
</div>

以下是我的 HTML FOR CAROUSEL

<div id="myCarousel" class="carousel slide" data-ride="carousel">

<ol class="carousel-indicators">
  <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
  <li data-target="#myCarousel" data-slide-to="1"></li>
  <li data-target="#myCarousel" data-slide-to="2"></li>
</ol>

<div class="carousel-inner" role="listbox">
  <div class="item active">
    <img src="{% static 'personal/img/seanie1.jpg' %}" alt="Chania">
  </div>

  <div class="item">
    <img src="{% static 'personal/img/seanie2.jpg' %}" alt="Chania">
  </div>

  <div class="item">
    <img src="{% static 'personal/img/seanie3.jpg' %}" alt="Flower">
  </div>
</div>

<a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
  <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
  <span class="sr-only">Previous</span>
</a>

<a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
  <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
  <span class="sr-only">Next</span>
</a>
</div>

有很多css,比我给的更多。但其余的主要是改变点击导航栏上的项目时显示的颜色......

以下是我的 CSS

.navbar{
  z-index: 2;
}

.carousel-inner{
  z-index: 1;
}

以下是我的 JS

  $(document).ready(function() {
    $("#myCarousel").carousel();

    $(".item").click(function(){
      $("#myCarousel").carousel(1);
    });

    $(".left").click(function(){
      $("#myCarousel").carousel("prev");
    });
  });

  var didScroll;
  var lastScrollTop = 0;
  var delta = 5;
  var navbarHeight = $('header').outerHeight();

  $(window).scroll(function(event){
      didScroll = true;
  });

  setInterval(function() {
      if (didScroll) {
          hasScrolled();
          didScroll = false;
      }
  }, 250);

  function hasScrolled() {
      var st = $(this).scrollTop();
      if(Math.abs(lastScrollTop - st) <= delta) {
          return;
      }
      if (st > lastScrollTop && st > navbarHeight)  {
          $('header').removeClass('nav-down').addClass('nav-up');
      } else {
          if(st + $(window).height() < $(document).height()) {
              $('header').removeClass('nav-up').addClass('nav-down');
          }
      }
      lastScrollTop = st;
  }

1 个答案:

答案 0 :(得分:1)

要显示顶部的导航栏,请提供比旋转木马更高的z-index。

header {
  z-index: 100
}