Als Laie finde ich die die Beispielsituation zu komplex, desweiteren gehst du gar nicht auf die "placeholder"-Funktion ein, die dir das Zustandsobjekt generiert, später dann auch noch Jquery.
Und das beste... Anstatt direkt beim Eventhandler auf den übergebenen Parameter zu reagieren, greifst du auf ein globales Objekt zurück. Mit Javascript und dessen Events respektive den Eventhandlern hab ich schon ein paar mal rumgespielt, dadurch kam mir dein Handler sonderbar vor, also kurz gesucht:
window.onpopstate = function(event) {
console.log("location: " + document.location + ", state: " + JSON.stringify(event.state));
};
(Quelle: https://developer.mozilla.org/en/docs/Web/Events/popstate)
Ich weiß jetzt nicht genau wie die JS-Interna funktioniert, wenn man (warum auch immer) 2x history.pushState() aufruft, sollten doch beide Aufrufe des Eventhandlers – nach deiner Herangehensweise – das gleiche Objekt bekommen, da die Handler ja asynchron aufgerufen werden, oder liege ich falsch?
MfG kackb00n