Created
May 6, 2016 04:19
-
-
Save zahlex/818b855aba145acf55788a9db893d45c to your computer and use it in GitHub Desktop.
Sticky scrolling Bootstrap Navbar
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!doctype html> | |
<html lang="en"> | |
<head> | |
<meta charset="utf-8"> | |
<meta http-equiv="x-ua-compatible" content="ie=edge"> | |
<title>Sticky scrolling Navbar by Zahlex</title> | |
<meta name="description" content="Simple but efficient way to implement a TWBS Navbar that scrolls with the content but also sticks at the top of the viewport"> | |
<meta name="viewport" content="width=device-width, initial-scale=1"> | |
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous"> | |
</head> | |
<body> | |
<header style="width: 100%; height: 200px; background-color: #EEE; display: block;"> | |
</header> | |
<nav class="navbar navbar-default navbar-fixed-top" style="transform: translateY(200px);"> | |
<div class="container"> | |
<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> | |
<a class="navbar-brand" href="#">Brand</a> | |
</div> | |
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> | |
<ul class="nav navbar-nav"> | |
<li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li> | |
<li><a href="#">Link</a></li> | |
<li class="dropdown"> | |
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> | |
<ul class="dropdown-menu"> | |
<li><a href="#">Action</a></li> | |
<li><a href="#">Another action</a></li> | |
<li><a href="#">Something else here</a></li> | |
<li role="separator" class="divider"></li> | |
<li><a href="#">Separated link</a></li> | |
<li role="separator" class="divider"></li> | |
<li><a href="#">One more separated link</a></li> | |
</ul> | |
</li> | |
</ul> | |
<form class="navbar-form navbar-left" role="search"> | |
<div class="form-group"> | |
<input type="text" class="form-control" placeholder="Search"> | |
</div> | |
<button type="submit" class="btn btn-default">Submit</button> | |
</form> | |
<ul class="nav navbar-nav navbar-right"> | |
<li><a href="#">Link</a></li> | |
<li class="dropdown"> | |
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> | |
<ul class="dropdown-menu"> | |
<li><a href="#">Action</a></li> | |
<li><a href="#">Another action</a></li> | |
<li><a href="#">Something else here</a></li> | |
<li role="separator" class="divider"></li> | |
<li><a href="#">Separated link</a></li> | |
</ul> | |
</li> | |
</ul> | |
</div> | |
</div> | |
</nav> | |
<div class="container" style="margin-top: 75px;"> | |
<div class="jumbotron" style="height: 300px;"> | |
</div> | |
<div class="jumbotron" style="height: 300px;"> | |
</div> | |
<div class="jumbotron" style="height: 300px;"> | |
</div> | |
<div class="jumbotron" style="height: 300px;"> | |
</div> | |
</div> | |
<script src="https://code.jquery.com/jquery-2.2.3.min.js" crossorigin="anonymous"></script> | |
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" crossorigin="anonymous"></script> | |
<script> | |
var doc = $(document); | |
var nav = $("nav"); | |
doc.scroll(function(){ | |
var top = 200; | |
var scroll = doc.scrollTop(); | |
if (scroll > top) { | |
scroll = top; | |
} | |
nav.css("transform", "translateY(" + (top - scroll) + "px)"); | |
}); | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment