Heim  >  Artikel  >  Web-Frontend  >  Wie kann ich mit JavaScript einen Fortschrittsbalken beim Laden einer Seite implementieren?

Wie kann ich mit JavaScript einen Fortschrittsbalken beim Laden einer Seite implementieren?

DDD
DDDOriginal
2024-10-29 03:15:02554Durchsuche

How Can I Implement a Progress Bar During Page Loading with JavaScript?

Anzeigen eines Fortschrittsbalkens während des Seitenladens

Die Notwendigkeit, beim Laden einer Seite einen Fortschrittsbalken anzuzeigen, kann die Benutzererfahrung durch visuelle Darstellung verbessern Rückmeldung zum Ladestatus. Um einen laufenden Fortschrittsbalken zu erstellen, kann man die Ajax-Ereignis-Listener nutzen, um den Fortschritt aller an den Server gestellten Anfragen zu verfolgen.

Hier ist ein Beispielcode, der zeigt, wie dieses Verhalten implementiert wird:

<code class="javascript">$.ajax({
  xhr: function() {
    var xhr = new window.XMLHttpRequest();
    //Upload progress
    xhr.upload.addEventListener("progress", function(evt) {
      if (evt.lengthComputable) {
        var percentComplete = evt.loaded / evt.total;
        // Update the progress bar with the calculated percentage
        console.log(percentComplete);
      }
    }, false);
    //Download progress
    xhr.addEventListener("progress", function(evt) {
      if (evt.lengthComputable) {
        var percentComplete = evt.loaded / evt.total;
        // Update the progress bar with the calculated percentage
        console.log(percentComplete);
      }
    }, false);
    return xhr;
  },
  type: 'POST',
  url: "/",
  data: {},
  success: function(data) {
    //Do something success-ish
  }
});</code>

Dieser Code fügt Ereignis-Listener an das XMLHttpRequest-Objekt an, das die Ajax-Anfrage initiiert. Das Ereignis „Fortschritt“ wird sowohl für den Upload- als auch für den Download-Fortschritt erfasst. Innerhalb der Ereignis-Listener wird der prozentuale Abschluss berechnet und kann verwendet werden, um die Fortschrittsbalken-Benutzeroberfläche entsprechend zu aktualisieren.

Wenn Sie beispielsweise ein Fortschrittsbalkenelement mit der ID „progress-bar“ haben, könnten Sie dies tun Aktualisieren Sie die Breite mithilfe des berechneten Prozentsatzes:

<code class="javascript">$("#progress-bar").css("width", percentComplete * 100 + "%");</code>

Durch die Integration dieser Technik in Ihren Seitenladeprozess erhalten Benutzer eine visuelle Darstellung des Fortschritts, wodurch die allgemeine Reaktionsfähigkeit und Benutzererfahrung Ihrer Anwendung verbessert wird.

Das obige ist der detaillierte Inhalt vonWie kann ich mit JavaScript einen Fortschrittsbalken beim Laden einer Seite implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn