Gibt es eine Möglichkeit zu sagen, in welche Richtung der Staat mit history.js gehen wird?

8

Wie der Titel sagt, würde ich gerne ein anderes onstatechange -Ereignis durchführen können, wenn die pushState -Funktion anstelle der back -Funktion aufgerufen wird. Oder, wenn die Funktion go negativ oder positiv ist.

Beispiel:

Wenn History.pushState() oder History.go(1) aufgerufen werden, möchte ich, dass der statechange -Ereignis-Callback forwardPushState

ist

Wenn History.back() oder History.go(-1) aufgerufen werden, möchte ich, dass der statechange -Ereignis-Callback backwardsPushState

ist     
Ascherer 14.05.2013, 16:20
quelle

2 Antworten

6

Ein Zustand sind einige Daten, die sich auf eine Seite beziehen (wie der Benutzer sie im Browser sieht). Wenn der Benutzer auf einer bestimmten Seite sein möchte, ist diese Seite die gleiche, entweder wenn er von einem Klick auf die Zurück-Taste oder von einem Klick auf die Vorwärts-Taste kommt, wie ich denke.

PushState drückt einen neuen Status im Stapel. Es hat keine Beziehung mit back und go . Back und go sind Funktionen, um über gestoßene Zustände im Stapel zu navigieren. Ich sage das, weil Sie in Ihrer Bearbeitung denken, dass Sie denken, dass pushState und go (1) gleichwertig sind.

Wenn Sie wissen möchten, aus welcher Richtung der Benutzer kommt, sollten Sie onstatechange event analysieren, um zu wissen, ob ein Parameter zur Speicherung der Richtung erforderlich ist. Ich weiß immer noch nicht, wie ich es machen soll.

Hauptsache ich denke, dass es keine Beziehung mit dem go (-1) oder go(1) oder back hat.

    
whiteletters in blankpapers 18.05.2013, 23:32
quelle
-1

Vielleicht wird das für Sie funktionieren.

%Vor%

Der obige Code erschwert die Verwendung der Zurück-Schaltfläche zum Laden dieser Seite.

Zweiter Versuch

Der folgende Code wurde von einem anderen Stapelüberlauf genommen.

Schaltfläche "Zurück" im Browser suchen

%Vor%

}

    
John b 21.05.2013 16:59
quelle