Skip to content
Youths Forum Youths Forum Youths Forum

Tech Blogs & Programming Tutorials

Youths Forum Youths Forum Youths Forum

Tech Blogs & Programming Tutorials

  • Blog
  • News
  • Programming
    • PHP
    • JavaScript
    • JQuery
    • CSS
    • HTML
    • API
  • Stock Market Live
  • Automobiles
    • Cars
  • Gadgets
    • Phones
    • Android Phones

Categories

  • Artificial Intelligence (1)
  • Automobiles (12)
    • Cars (7)
  • Blog (104)
    • Poems (2)
    • Space (2)
  • Command (2)
  • Education (2)
  • Entertainment (4)
  • Gadgets (9)
    • Phones (8)
      • Android Phones (4)
  • HTML Templates (11)
  • IT Training Institutes (1)
  • Lifestyle (4)
  • News (56)
  • Others (23)
  • Programming (296)
    • API (16)
    • CSS (83)
    • Database (4)
    • Hosting (1)
    • HTML (37)
    • JavaScript (117)
      • JQuery (27)
      • ReactJS (7)
    • PHP (116)
  • Python (3)
  • recipes (1)
  • SEE Result (1)
  • Server (3)
  • Blog
  • News
  • Programming
    • PHP
    • JavaScript
    • JQuery
    • CSS
    • HTML
    • API
  • Stock Market Live
  • Automobiles
    • Cars
  • Gadgets
    • Phones
    • Android Phones
Close

Search

JavaScript

Create Page Scroll Indicator in 2 simple steps

By Admin
May 23, 2020 2 Min Read
0

Scroll Indicator is basically a line which fills up based on how much the user has scrolled in the page. They are usually positioned at the Top of the page but can differ based on the design and requirement.

In this post, we will be implementing Scroll Indicator using JavaScript in two simple steps.

Step 1

We will need a JS file for this “progress_bar.js” with following code in it. And include this JS in all webpage where we want the Scroll Indicator to appear.

progress_bar.js

$(document).ready(function(){
    progressBar('.page-progressbar');
});
window.progressBar = function(selector, options) {
  if(options == null) options = {};
  var object = document.querySelector(selector);
  if(!object) {
    console.error("Object not found with " + selector);
    return null;
  }

/*you can alter these values based on your requirement*/
  var defaults = {
    color: '#D42620',
    size: '5px',
    position: 'top',
    speed: '500',
  };
  object.style.position = "fixed";
  object.style.background = option('color');
  object.style.height = option('size');
  switch (option('position')) {
    case 'bottom':
      object.style.bottom = "0px";
      break;
    default:
      object.style.top = "56px"; /*the distance from top where you want to show the scroll indicator*/
  }
  object.style.transition = "width "+option('speed')+'ms';

  window.addEventListener('scroll', function(e){
    var h = document.documentElement,
    b = document.body,
    st = 'scrollTop',
    sh = 'scrollHeight';
    var percent = parseInt((h[st]||b[st]) / ((h[sh]||b[sh]) - h.clientHeight) * 100);
    object.style.width = percent+"vw"
  });
  return object;

  function option(prop) {
    if(options[prop]) return options[prop];
    return defaults[prop];
  }
}

Step 2

In next step, we will simple create an HTML element with class name “page-progressbar” in our actual webpage.

<div style="z-index:99999;" class="page-progressbar"></div>

We will set the z-index of the element to max value so that any other HTML element would not overlap it.

For complete guidance, you may follow this video:

Tags:

scroll indicator
Author

Admin

Follow Me
Other Articles
Previous

Implement World Map using jVectorMap

Next

Design Simple yet Pretty Login Form for Admin Panel

No Comment! Be the first one.

Leave a Reply

Your email address will not be published. Required fields are marked *

FIFA World Cup 2026 Predict and Win by SportsGuff

Recent Posts

  • Over 10,000 Nepali Students to Join First-Ever National Innovation League
  • AI Journalism Workshop Held in Kathmandu by CAN Federation and TBAN
  • ChatGPT vs Gemini vs Claude AI: 7 Crucial Differences Revealed
  • CAN Federation Partners with FEJA to Host Exclusive ‘AI in Journalism’ Workshop
  • Shramik Shanti Campus Hosts Workshop on AI in Cybersecurity and Sovereign AI

Tags

adsense ai animate animation animation using HTML and CSS API blog calculator chatgpt Cryptocurrency CSS css animation design Email Facebook featured filemanager file manager free template google htaccess HTML image Instagram interview javascript JQuery jquery ui NADA AutoShow NADA Auto Show 2024 password PHP Progressive Web App PWA QR random react reactjs Rotate travel Twitter vpn youthforum youthsforum youtube

About Us

At Youths Forum, we are passionate about sharing knowledge that empowers students, educators, professionals, and technology enthusiasts.

Our Mission

Our mission is simple: to make technology and education accessible, understandable, and beneficial for everyone. We strive to create content that helps our readers learn new skills and stay updated with industry developments.

RSS RSS

  • Over 10,000 Nepali Students to Join First-Ever National Innovation League Admin
  • AI Journalism Workshop Held in Kathmandu by CAN Federation and TBAN Admin
  • ChatGPT vs Gemini vs Claude AI: 7 Crucial Differences Revealed Admin

Quick Links

  • Stock Market Live
  • Parliament Election 2082
Copyright 2026 — Youths Forum. All rights reserved. Blogsy WordPress Theme