Bootstrap 导航栏必须从第 2 个开始出现 div
Bootstrap navbar must appear from 2nd div
我想在第一个 div 中隐藏导航栏,并让它在第二个中显示...我该怎么做?
从 div 开始,以下字符串被写入:"DIV 2 NAVBAR MUST APPEAR FROM 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>
将此添加到您的 javascript
$(window).scroll(function() {
if($(window).scrollTop() > $('#main').outerHeight())
$('.navbar').show();
else
$('.navbar').hide();
});
我解决了将 position:relative
给第二个 div 和 position: absolute
给导航栏的方法:
$(window).scroll(function() {
if($(window).scrollTop() > $('#main').outerHeight())
$('.navbar').removeClass('fixed');
else
$('.navbar').addClass('fixed');
});
.wrapper {
position: relative;
}
.fixed {
position: absolute;
}
我想在第一个 div 中隐藏导航栏,并让它在第二个中显示...我该怎么做?
从 div 开始,以下字符串被写入:"DIV 2 NAVBAR MUST APPEAR FROM 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>
将此添加到您的 javascript
$(window).scroll(function() {
if($(window).scrollTop() > $('#main').outerHeight())
$('.navbar').show();
else
$('.navbar').hide();
});
我解决了将 position:relative
给第二个 div 和 position: absolute
给导航栏的方法:
$(window).scroll(function() {
if($(window).scrollTop() > $('#main').outerHeight())
$('.navbar').removeClass('fixed');
else
$('.navbar').addClass('fixed');
});
.wrapper {
position: relative;
}
.fixed {
position: absolute;
}