Hoe te maken: JavaScript voortgangsbalk

Leer hoe je een voortgangsbalk maakt met JavaScript.

Maak een voortgangsbalk

Eerste stap - Voeg HTML toe:

<div id="myProgress">
  <div id="myBar"></div>
</div>

Tweede stap - Voeg CSS toe:

#myProgress {
  breedte: 100%;
  achtergrondkleur: grijs;
}
#myBar {
  breedte: 1%;
  hoogte: 30px;
  achtergrondkleur: groen;
}

Derde stap - Voeg JavaScript toe:

Maak een dynamische voortgangsbalk met JavaScript (animatie-effect):

var i = 0;
functie move() {
  als (i == 0) {
    i = 1;
    var elem = document.getElementById("myBar");
    var width = 1;
    var id = setInterval(frame, 10);
    functie frame() {
      als (width >= 100) {
        clearInterval(id);
        i = 0;
      } anders {
        width++;
        elem.style.width = width + "%";
      }
    }
  }
}

Try it yourself

Voeg etiket toe

Als u een etiket wilt toevoegen om de voortgang van de gebruiker aan te geven in de huidige proces, voeg dan een nieuwe element toe binnen (of buiten) de voortgangsbalk:

Eerste stap - Voeg HTML toe:

<div id="myProgress">
  <div id="myBar">10%</div>
</div>

Tweede stap - Voeg CSS toe:

#myBar {
  breedte: 10%;
  hoogte: 30px;
  achtergrondkleur: #04AA6D;
  text-align: center; /* Horizontaal centreren (indien nodig) */
  line-height: 30px; /* Verticaal centreren */
  kleur: wit;
}

Try it yourself

Derde stap - Voeg JavaScript toe:

Als u de tekst in het etiket wilt updaten in real-time om gelijk te zijn aan de breedte van de voortgangsbalk, voeg dan het volgende toe:

var i = 0;
functie move() {
  als (i == 0) {
    i = 1;
    var elem = document.getElementById("myBar");
    var width = 10;
    var id = setInterval(frame, 10);
    functie frame() {
      als (width >= 100) {
        clearInterval(id);
        i = 0;
      } anders {
        width++;
        elem.style.width = width + "%";
        elem.innerHTML = width + "%";
      }
    }
  }
}

Try it yourself