How to create Fixed Menu When Scrolling Page with CSS and jQuery

How to create Fixed Menu When Scrolling Page with CSS and jQuery

In this Tutorial I will explain how to create fixed menu when scrolling page with CSS and jQuery, you already know jQuery right? A short description about jQuery, jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development.

The aim is to have the navigation fixed when user scrolling the page and back to its original position when scrolling back to top.

Demo

Click hereto view demo page.

There are lots of tutorial out there in the net but it contains lots of JS code so I decided to create my own way and with only a few lines of JS code, in this tutorial I only use 2 JS functions to make the fixed menu working, yes only two functions.

Ok, let’s start.

jQuery Library

All we need is only jQuery library; you can download it in jQuery site or use other library from Google CDN, Miscrosoft CDN and jQuery CDN.

HTML

This contains our menu HTML element, this is just a simple HTML UL tag to make our menus but if you already have one then use that instead.

NOTE:
If you’re going to use your old menus make sure to replace the class in JS code.

CSS

To make our menu list horizontally we need to add CSS code.

We set the z-index very high since we don’t want any other absolute element to be on top of our navigation and add with in percent to center menu while scrolling.

Javascript

This small JS code contains the main functions of our fixed scroll menu.

So, if we are on the top less than 136 height in pixel the menu is in the original position and add f-nav CSS class when greater than 136px height or add f-nav CSS class on scroll, where the top page greater than 136px height.

That’s it, its easy right? Enjoy!

Bounce Fix
If you’re experiencing bounce effect, see lot of suggested code in the comment section below.

by Ryan Sutana