Ich habe nach der Anfrage gesucht, um den HTML-Code des letzten in den Verlauf geschobenen Zustands zu erhalten, habe aber keine befriedigenden Antworten erhalten. Aber ich habe eine Idee für dich, warum versuchst du nicht, das HTML des Staates zu speichern, bevor du es in die Geschichte schiebst? Dies ist durchaus möglich, wenn man clientseitige (Cookies) oder serverseitige (Session-) Variablen verwendet, die auch dann abgerufen werden können, wenn die Dinge in den Verlauf zurückversetzt wurden.
Die pushState-Methode verwendet das state
-Objekt als erstes Argument, an dem Sie null
übergeben:
Beispiel für die Methode pushState ()
var stateObj = {foo: "bar"};
history.pushState (stateObj, "Seite 2", "bar.html");
Für Ihr Beispiel:
%Vor% Was mich betrifft ist, dass Sie dann scheinen möchten, dass document.write()
das HTML zurück auf die Seite bringt? Wenn ja, würde ich versuchen, das zu vermeiden, wie in diesem SO-Thread erläutert: Warum wird document.write als "schlechte Praxis" betrachtet?
Soweit das gesamte HTML des Körpers zu speichern, ist das schwierig. In Firefox zum Beispiel gibt es ein Limit von 640 Kilobit. Wenn Ihr HTML-Code möglicherweise diesen Wert überschreiten könnte (wahrscheinlich), sollten Sie nur Informationen speichern, mit denen Sie das wiederherstellen können, was Sie benötigen. Versuchen Sie, ein Object
nur mit den Informationen zu speichern, die Sie zum Füllen der Seite mit JavaScript / jQuery / etc.
Das Statusobjekt kann alles sein, was serialisiert werden kann. weil Firefox speichert Statusobjekte auf dem Datenträger des Benutzers, damit sie wiederhergestellt werden können Nachdem der Benutzer den Browser neu gestartet hat, legen wir eine Größenbeschränkung von 640k fest Zeichen auf der serialisierten Darstellung eines Zustandsobjekts. Wenn du Übergeben Sie ein Zustandsobjekt, dessen serialisierte Darstellung größer als ist Mit dieser Methode wird eine Ausnahme ausgelöst. Wenn Sie brauchen mehr Platz als das, werden Sie aufgefordert, sessionStorage und / oder zu verwenden localStorage.
Viele weitere gute Infos hier:
Tags und Links javascript jquery pushstate popstate