2016-04-16 7 views
0

Ich möchte die navbar aus der 1. div verstecken und lassen Sie es von der zweiten erscheinen ... Wie kann ich es tun?bootstrap navbar muss von 2. div

Von der div, wo ist fritten die folgende Zeichenfolge: "DIV 2 NAVBAR MUSS VON HIER ERSCHEINEN !!"

Codepen here

<div> 
    <div id="main"> 
    <h1>Hello</h1> 
    <h2>Div 1: I DON'T WANT NAVBAR HERE!!!</h2> 
    </div> 

    <div class="container-fluid"> 
    <nav class="navbar navbar-default navbar-fixed-top"> 
     <div class="container-fluid"> 
     <div class="navbar-header"> 
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> 
      <span class="sr-only">Toggle navigation</span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
      </button> 
     </div> 
     <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
      <ul class="nav navbar-nav"> 
      <li><a href="#home">HOME <span class="sr-only">(current)</span></a></li> 
      <li><a href="#about">ABOUT</a></li> 
      <li><a href="#third">LINK</a></li> 
      </ul> 
     </div> 
     </div> 
    </nav> 

    <div id="home"> 
     <h1>DIV 2 NAVBAR MUST APPEAR FROM HERE!!</h1>   
    </div> 
    <div id="about"> 
     <div class="row"> 
     <div class="col-lg-offset-1 col-md-10"> 
      <h2 class="title">ABOUT</h2> 
      <div class="overflow"> 
      <p>Lorem ipsum goes here.</p> 
     </div> 
     </div> 
     </div> 
    </div> 

    <div id="third"> 
     <h2 class="title">SECOND</h2> 
     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p> 
    </div> 
    </div> 
</div> 

Antwort

0

ich position:relative an den zweiten div und position: absolute auf die navbar auf diese Weise ausgewertete geben:

$(window).scroll(function() { 
if($(window).scrollTop() > $('#main').outerHeight()) 
    $('.navbar').removeClass('fixed'); 
else 
    $('.navbar').addClass('fixed'); 
    }); 

.wrapper { 
    position: relative; 
} 

.fixed { 
    position: absolute; 
} 

Edited codepen here

0

Fügen Sie diese auf Ihrem Javascript

$(window).scroll(function() { 
    if($(window).scrollTop() > $('#main').outerHeight()) 
     $('.navbar').show(); 
    else 
     $('.navbar').hide(); 
}); 
+0

Es funktioniert! Aber ist es möglich, es oben auf dem zweiten div zu setzen (also es nicht zu verstecken) und dann der Bildlauf nach unten zu folgen? – paolopolix