Zurück-Taste / Rückschritt funktioniert nicht mit window.history.pushState

8

Ich habe eine Lösung für meine Website gefunden, die die Verwendung von Ajax beinhaltet, um die allgemeinen Informationen auf der Website darzustellen. Dadurch ändere ich die URL jedes Mal, wenn ein Benutzer einen bestimmten Inhalt mit der window.history.pushState-Methode lädt. Wenn ich jedoch die Rücktaste drücke oder zurück drücke, wird der Inhalt der alten URL nicht geladen (die URL wird jedoch geladen).

Ich habe mehrere Lösungen ohne Erfolg auf SO versucht.

Hier ist ein Beispiel für eine der Ajax-Funktionen:

%Vor%

Ich hoffe, ihr könnt mir helfen:)

    
Amnestic 12.10.2013, 14:38
quelle

1 Antwort

15

pushState alone bewirkt nicht, dass Ihre Seite mit Back / Forward funktioniert. Sie müssten onpopstate anhören und die Inhalte ähnlich wie beim Klick laden.

%Vor%

Beachten Sie, dass history.state ein etwas weniger unterstützter Teil der Verlaufs-API ist. Wenn Sie alle pushState -Browser unterstützen möchten, müssen Sie eine andere Möglichkeit haben, den aktuellen Status in popstate abzurufen, wahrscheinlich indem Sie die URL analysieren.

Es wäre trivial und wahrscheinlich eine gute Idee, die Ergebnisse des priceChecks auch für den Namen zwischenzuspeichern und sie aus dem Cache zu holen, anstatt weitere php-Anfragen zu stellen.

    
numbers1311407 12.10.2013, 15:24
quelle

Tags und Links