Heim > Web-Frontend > js-Tutorial > Die JavaScript-Verlaufs-API

Die JavaScript-Verlaufs-API

Patricia Arquette
Freigeben: 2024-12-25 18:06:13
Original
957 Leute haben es durchsucht

Einführung

Die JavaScript History API ist Teil der Web API, die es uns ermöglicht, mit dem Sitzungsverlauf des Browsers zu interagieren. Es bietet Methoden und Eigenschaften zum Navigieren, Bearbeiten und Steuern des Verlaufsstapels und ermöglicht es Entwicklern, dynamischere und interaktivere Benutzererlebnisse zu schaffen, ohne dass komplette Seiten neu geladen werden müssen.

Hauptfunktionen der JavaScript History API

  1. history.back()
  2. history.forward()
  3. history.go(n)
  4. history.pushState()
  5. history.replaceState()

Die Methode „history.back()“.

Diese Methode verschiebt den Browser zur vorherigen Seite im Sitzungsverlauf, äquivalent zur Zurück-Schaltfläche des Browsers. Dies funktioniert nur, wenn eine vorherige Seite im Verlaufsstapel des Browsers vorhanden ist.

Beispiel:

<!DOCTYPE html>
<html>
<body>

<h1>The Window History Object</h1>
<h2>The history.back() Method</h2>

<button onclick="history.back()">Go Back</button>

</body>
</html>
Nach dem Login kopieren
Nach dem Login kopieren

Ausgabe:

The JavaScript History API

Durch Klicken auf die Schaltfläche „Zurück“ gelangt der Benutzer zur vorherigen Seite, sofern diese im Verlaufsstapel vorhanden ist.

Die Methode „history.forward()“.

Diese Methode verschiebt den Browser zur nächsten Seite im Sitzungsverlauf, äquivalent zur Weiterleitungsschaltfläche des Browsers. Dies funktioniert nur, wenn im Verlaufsstapel des Browsers eine nächste Seite vorhanden ist.

Beispiel:

<!DOCTYPE html>
<html>
<body>

<h1>The Window History Object</h1>
<h2>The history.forward Method</h2>

<button onclick="history.forward()">Go Forward</button>

</body>
</html>

Nach dem Login kopieren

Ausgabe:

The JavaScript History API

Durch Klicken auf die Schaltfläche „Weiter“ gelangt der Benutzer zur nächsten Seite, sofern diese im Verlaufsstapel vorhanden ist.

Die Methode „history.go()“.

Diese Methode wird verwendet, um zu einem bestimmten Punkt im Browser-Stack zu navigieren. Es braucht ein Argument 'n', das die Nummer der Seite angibt, zu der wir durch den Verlaufsstapel navigieren möchten.

Das Argument 'n' kann die folgenden Werte annehmen:

  • Positives 'n' bringt den Benutzer nach vorne im Stapel.
  • Negativ 'n' bringt den Benutzer nach hinten im Stapel.
  • Wenn 'n' den Wert 0 hat, lädt esdie aktuelle Seite neu.

Die Methode „history.pushState()“.

Diese Methode wird verwendet, um einen neuen Eintrag im Verlaufsstapel der aktuellen Sitzung hinzuzufügen, d. h. die Sammlung aller im aktuellen Browser-Tab besuchten Seiten.

Beispiel:
Wir erstellen ein Button-Element und weisen ihm einen Click-Handler zu. Innerhalb des Handlers rufen wir die Methode pushState() auf. Dies fügt einen neuen Eintrag mit einer anderen URL als der der aktuellen Seite hinzu.

// HTML ->
<button>Call pushState()</button>

// JavaScript ->
var button = document.querySelector('button');
button.onClick = function() {
    history.pushState(null, ' ', 'some-page');
}
Nach dem Login kopieren

Ausgabe:

The JavaScript History API

Derzeit lautet die URL - https://www.codeguage.com/courses/js/examples/pushstate

Wenn Sie auf die Schaltfläche klicken, ändert sich die URL zu - https://www.codeguage.com/courses/js/examples/some-page

The JavaScript History API

Dadurch wird bestätigt, dass ein neuer Eintrag zum Verlauf der aktuellen Sitzung hinzugefügt wurde, außerdem die URL in der Adressleiste des Browsers geändert wird. Sie können auch sehen, dass der Zurück-Pfeil des Browsers jetzt auch in der oberen linken Ecke aktiv ist. Wenn Sie darauf klicken, gelangen Sie zurück zu -
https://www.codeguage.com/courses/js/examples/pushstate

Es ist äußerst wichtig zu wissen, dass pushState() die URL ändert, ohne jemals zu prüfen, ob sie überhaupt existiert oder nicht. Dies liegt daran, dass der Zweck von pushState() nicht darin besteht, eine Webseite zu laden, sondern vielmehr nur einen neuen Eintrag zum Verlauf hinzuzufügen.

Die Methode „history.replaceState()“.

Diese Methode ersetzt den aktuellen Eintrag im Verlaufsstapel der aktuellen Sitzung durch einen neuen Eintrag.

Beispiel:
Wie zuvor haben wir eine Schaltfläche mit einem Klick-Handler festgelegt. Aber dieses Mal rufen wir innerhalb des Handlers replaceState() auf, um den aktuellen Verlaufseintrag durch einen neuen zu ersetzen.

<!DOCTYPE html>
<html>
<body>

<h1>The Window History Object</h1>
<h2>The history.back() Method</h2>

<button onclick="history.back()">Go Back</button>

</body>
</html>
Nach dem Login kopieren
Nach dem Login kopieren

Ausgabe:

The JavaScript History API

Die aktuelle URL lautet -
https://www.codeguage.com/courses/js/examples/replacestate

Wenn Sie auf die Schaltfläche klicken, ändert sich die URL in -
https://www.codeguage.com/courses/js/examples/some-page

The JavaScript History API

Die Browser-URL wurde ersetzt und Sie können feststellen, dass die Zurück-Pfeiltaste in der oberen linken Ecke NICHT aktiv ist, was bestätigt, dass ein neuer Eintrag vorhanden ist NICHT zum Verlaufsstapel hinzugefügt, wir haben nur den aktuellen Eintrag durch einen neuen ersetzt eins.

Und das ist es! Sie haben erfolgreich etwas über die JavaScript History API gelernt und erfahren, wie Sie ihre verschiedenen Dienstprogramme verwenden und in Ihre Anwendungen integrieren.

Vernetzen Sie sich mit mir auf LinkedIn :- Linkedin

Schauen Sie sich meinen GitHub für tolle Projekte an :- Github

Sehen Sie sich mein persönliches Portfolio an: - Aryans Portfolio

Das obige ist der detaillierte Inhalt vonDie JavaScript-Verlaufs-API. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage