All for Joomla All for Webmasters

Bootstrap Scrollspy

The Bootstrap Scrollspy plugin is used to automatically update links in a navigation list based on scroll position.

See this example:

  1.  <!DOCTYPE html>
  2. <html>
  3. <head>
  4.   <title>Bootstrap Example</title>
  5.   <meta charset=“utf-8”>
  6.   <meta name=“viewport” content=“width=device-width, initial-scale=1”>
  7.   <link rel=“stylesheet” href=“http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css”>
  8.   <script src=“https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js”></script>
  9.   <script src=“http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js”></script>
  10.   <style>
  11.   body {
  12.       position: relative;
  13.   }
  14.   #section1 {padding-top:50px;height:500px;color: #fff; background-color: #1E88E5;}
  15.   #section2 {padding-top:50px;height:500px;color: #fff; background-color: #673ab7;}
  16.   #section3 {padding-top:50px;height:500px;color: #fff; background-color: #ff9800;}
  17.   #section41 {padding-top:50px;height:500px;color: #fff; background-color: #00bcd4;}
  18.   #section42 {padding-top:50px;height:500px;color: #fff; background-color: #009688;}
  19.   </style>
  20. </head>
  21. <body data-spy=“scroll” data-target=“.navbar” data-offset=“50”>
  22. <nav class=“navbar navbar-inverse navbar-fixed-top”>
  23.   <div class=“container-fluid”>
  24.     <div class=“navbar-header”>
  25.         <button type=“button” class=“navbar-toggle” data-toggle=“collapse” data-target=“#myNavbar”>
  26.           <span class=“icon-bar”></span>
  27.           <span class=“icon-bar”></span>
  28.           <span class=“icon-bar”></span>
  29.       </button>
  30.       <a class=“navbar-brand” href=“#”>WebSiteName</a>
  31.     </div>
  32.     <div>
  33.       <div class=“collapse navbar-collapse” id=“myNavbar”>
  34.         <ul class=“nav navbar-nav”>
  35.           <li><a href=“#section1”>Section 1</a></li>
  36.           <li><a href=“#section2”>Section 2</a></li>
  37.           <li><a href=“#section3”>Section 3</a></li>
  38.           <li class=“dropdown”><a class=“dropdown-toggle” data-toggle=“dropdown” href=“#”>Section 4 <span class=“caret”></span></a>
  39.             <ul class=“dropdown-menu”>
  40.               <li><a href=“#section41”>Section 4-1</a></li>
  41.               <li><a href=“#section42”>Section 4-2</a></li>
  42.             </ul>
  43.           </li>
  44.         </ul>
  45.       </div>
  46.     </div>
  47.   </div>
  48. </nav>
  49. <div id=“section1” class=“container-fluid”>
  50.   <h1>Section 1</h1>
  51.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  52. Try to scroll this section and look at the navigation bar while scrolling!</p>
  53.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  54. Try to scroll this section and look at the navigation bar while scrolling!</p>
  55. </div>
  56. <div id=“section2” class=“container-fluid”>
  57.   <h1>Section 2</h1>
  58.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  59. Try to scroll this section and look at the navigation bar while scrolling!</p>
  60.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  61. Try to scroll this section and look at the navigation bar while scrolling!</p>
  62. </div>
  63. <div id=“section3” class=“container-fluid”>
  64.   <h1>Section 3</h1>
  65.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  66. Try to scroll this section and look at the navigation bar while scrolling!</p>
  67.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  68. Try to scroll this section and look at the navigation bar while scrolling!</p>
  69. </div>
  70. <div id=“section41” class=“container-fluid”>
  71.   <h1>Section 4 Submenu 1</h1>
  72.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  73. Try to scroll this section and look at the navigation bar while scrolling!</p>
  74.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  75. Try to scroll this section and look at the navigation bar while scrolling!</p>
  76. </div>
  77. <div id=“section42” class=“container-fluid”>
  78.   <h1>Section 4 Submenu 2</h1>
  79.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  80. Try to scroll this section and look at the navigation bar while scrolling!</p>
  81.   <p>Try to scroll this section and look at the navigation bar while scrolling!
  82. Try to scroll this section and look at the navigation bar while scrolling!</p>
  83. </div>
  84. </body>
  85. </html>

 

Bootstrap Vertical Scrollspy Menu

You can also use vertical navigation pills as menu.

See this example:

  1.  <!DOCTYPE html>
  2. <html lang=“en”>
  3. <head>
  4.   <title>Bootstrap Example</title>
  5.   <meta charset=“utf-8”>
  6.   <meta name=“viewport” content=“width=device-width, initial-scale=1”>
  7.   <link rel=“stylesheet” href=“http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css”>
  8.   <script src=“https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js”></script>
  9.   <script src=“http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js”></script>
  10.   <style>
  11.   body {
  12.       position: relative;
  13.   }
  14.   ul.nav-pills {
  15.       top: 20px;
  16.       position: fixed;
  17.   }
  18.   div.col-sm-9 div {
  19.       height: 250px;
  20.       font-size: 28px;
  21.   }
  22.   #section1 {color: #fff; background-color: #1E88E5;}
  23.   #section2 {color: #fff; background-color: #673ab7;}
  24.   #section3 {color: #fff; background-color: #ff9800;}
  25.   #section41 {color: #fff; background-color: #00bcd4;}
  26.   #section42 {color: #fff; background-color: #009688;}
  27.   @media screen and (max-width: 810px) {
  28.     #section1, #section2, #section3, #section41, #section42  {
  29.         margin-left: 150px;
  30.     }
  31.   }
  32.   </style>
  33. </head>
  34. <body data-spy=“scroll” data-target=“#myScrollspy” data-offset=“20”>
  35. <div class=“container”>
  36.   <div class=“row”>
  37.     <nav class=“col-sm-3” id=“myScrollspy”>
  38.       <ul class=“nav nav-pills nav-stacked”>
  39.         <li class=“active”><a href=“#section1”>Section 1</a></li>
  40.         <li><a href=“#section2”>Section 2</a></li>
  41.         <li><a href=“#section3”>Section 3</a></li>
  42.         <li class=“dropdown”>
  43.           <a class=“dropdown-toggle” data-toggle=“dropdown” href=“#”>Section 4 <span class=“caret”></span></a>
  44.           <ul class=“dropdown-menu”>
  45.             <li><a href=“#section41”>Section 4-1</a></li>
  46.             <li><a href=“#section42”>Section 4-2</a></li>
  47.           </ul>
  48.         </li>
  49.       </ul>
  50.     </nav>
  51.     <div class=“col-sm-9”>
  52.       <div id=“section1”>
  53.         <h1>Section 1</h1>
  54.         <p>Try to scroll this section and look at the navigation list while scrolling!</p>
  55.       </div>
  56.       <div id=“section2”>
  57.         <h1>Section 2</h1>
  58.         <p>Try to scroll this section and look at the navigation list while scrolling!</p>
  59.       </div>
  60.       <div id=“section3”>
  61.         <h1>Section 3</h1>
  62.         <p>Try to scroll this section and look at the navigation list while scrolling!</p>
  63.       </div>
  64.       <div id=“section41”>
  65.         <h1>Section 4-1</h1>
  66.         <p>Try to scroll this section and look at the navigation list while scrolling!</p>
  67.       </div>
  68.       <div id=“section42”>
  69.         <h1>Section 4-2</h1>
  70.         <p>Try to scroll this section and look at the navigation list while scrolling!</p>
  71.       </div>
  72.     </div>
  73.   </div>
  74. </div>
  75. </body>
  76. </html>
PinIt
submit to reddit

Leave a Reply

Top