Winfried Kaiser: Browser-Event bei Forward und Backward Browsing

Beitrag lesen

Ich experimentiere derzeit mit AJAX (am konkreten Beispiel des "xtCommerce" Shop-Systems), und komme dabei auch sehr gut voran.

(AJAX gibt ein ganz neues Einkaufserlebnis, da der dauernde Neuaufbau der Seiten bei jeder Operation entfällt, und nur noch die wirklich zu ändernden Bereiche ausgetauscht werden. (So nebenbei ist da auch noch ein "sticky-cart" (ein auch beim scrollen sichtbarer Warenkorb) mit abgefallen.) Wen es interessiert: http://www.seifenparadies.de/ajax_test . (IE verwenden, mit Firefox gibt es auf dem online-Server noch ein paar Problemchen, lokal funktioniert das auch schon.)

Mit AJAX hat man nun aber das grundsätzliche Problem, dass die Browser "Zurück"- und "Vorwärts"-Buttons nicht mehr das gewünschte Ergebnis zeigen, da das AJAX-Konzept ja davon lebt, dass man an den normalen Browser-Mechanismen vorbei Elemente einer Seite dynamisch selbst lädt. Die Browser-Historie bekommt davon gar nichts mit.

Ich habe mir nun ein Konzept entwickelt, wie ich die Browsing-Historie auf Anwendungs-Ebene mitführen, und Im AJAX-Support-Script die Historie dann selbst abarbeiten könnte.

Notwendige Voraussetzung dafür wäre aber, dass ich bein Klick auf "Zurück" und "Vorwärts" ein Event bekomme, damit ich mein Historie im Javascript bearbeiten kann.

Ich habe aber bisher im Internet nichts derartiges gefunden!

Hat jemand eine Idee, wie man dieses Problem lösen könnte?

Alternativ wäre es auch eine Lösung, wenn man die Browser "Zurück" und "Vorwärts"-Buttons (und den "Zurück"-Menüeintrag) deaktivieren könnte, und stattdessen eigene Buttons dafür anbietet. Geht das??