Idee ist, Nachricht anzuzeigen, die inuser muser, dass Ajax Teil der Anwendung wokr falsch funktioniert, wenn er "zurück" -Taste verwendet. Ja, es gibt viele Diskussionen, aber keine Lösungen. Beste von dem, was ich gefunden habe: Speichern Sie Informationen über die letzte Seite auf der Serverseite, und überprüfen Sie die aktuelle Seite gegen Server-Informationen von Ajax. Aber auf diese Weise wäre es unmöglich, 2 Browserfenster von demselben Benutzer zu verwenden.Wie erkennt man die geöffnete Seite des Benutzers mit der BACK-Taste im Browser?
Antwort
Die wirkliche Lösung besteht darin, den Client den Zustand beizubehalten, anstatt Ihren Server. Sie brechen die Gesetze des Internet, wenn Sie so viel Client-Zustand auf dem Server behalten, dass die Zurück-Taste nicht :)
Ich stimme zu, dass es mehr korrekt wäre, um es nachher arbeiten zu lassen. Dies ist jedoch außerhalb des Umfangs und des Budgets. – st78
Sie wollen nicht funktionieren könnte mit der URL # (Raute) entwickeln speichern Client-Zustand
einen Blick auf http://www.asual.com/swfaddress/, wird sie von Flash und ajax zu behandeln Browser-History mit ajax verwendet,
Silverlight 3.0 eine ähnliche Technik für die Verwendung der # (Raute) in der uRL für Zustand verwendet.
Falls nicht klar ist, bedeutet diese Technik, dass der Inhalt immer dynamisch von einem Skript in Ihrer Site geladen wird. Es bedeutet, dass Sie kontrollieren, was passiert, eigentlich wird es sich natürlich so verhalten, als gäbe es keinen Zurück-Button, der Inhalt wird immer erneuert. Google verwendet dies auf Google Mail- und Orkut-Websites. – Havenard
@Havenard: -> "immer dynamisch geladen" ist nicht genau richtig, Sie können die Seite mit vom Server generiertem Inhalt vorbelegen (degradieren, wenn kein JS- oder JS-Problem vorhanden ist), dann wenn der Status sich außerhalb dieses Anfangs geändert hat laden, ja alle Inhalte sind "ajax-ed" drin. aber du bist auf dem Geld (+1 Kommentar) – BigBlondeViking
Diese Lösung trifft möglicherweise auf Ihren Fall zu und funktioniert möglicherweise nicht mit Ihrem Browser. Es schien für mich auf IE7 zu funktionieren, wo jede Seite eine eindeutige "Widget-ID" hatte, auf die im Querystring verwiesen wurde -
//try to detect a bad back-button usage;
//widgetId not match querystring parameter did=#
var mustReload = false;
if (location.search != null &&
location.search.indexOf("&did=") > 0)
{
var urlWidgetId = location.search.substring(
location.search.indexOf("&did=")+5);
if (urlWidgetId.indexOf("&") > 0)
{
urlWidgetId = urlWidgetId.substring(
0,urlWidgetId.indexOf("&"));
}
if (currentDashboard != urlWidgetId)
{
mustReload = true;
}
}
if (mustReload)
{
... //reload the page to resynch here
}
- 1. Wie kann ich die Client-Seite des Benutzers Browser erkennen?
- 2. Wie erkennt man die Rolle des aktuellen Benutzers in WordPress?
- 3. iOS erkennt Bewegung des Benutzers
- 4. Wie kann man auf die Auswahl des Benutzers im Browser zugreifen?
- 5. geöffnete Browser-Datei mit Jquery
- 6. Wie erkennt man den Blattwechsel eines Benutzers?
- 7. Wie erhält man die Geolokalisierung des Benutzers?
- 8. Wie aktualisiert man eine Seite im Browser mit selen-webdriver?
- 9. Ermitteln des Benutzers beim Verlassen der Seite
- 10. Aktualisieren der Seite im Browser ohne erneutes Senden des Formulars
- 11. Wie erkennt man die Position des Klicks?
- 12. Wie ändert man eine geöffnete Safari Browser URL vom Terminal?
- 13. Wie erkennt man die Seite mit jquery aktualisiert?
- 14. Wie erkennt man die Bildschirmauflösung ohne JavaScript?
- 15. Android-Absicht, den bevorzugten Browser des Benutzers zu öffnen
- 16. Wie finde ich den Standort des Benutzers?
- 17. Parse.com - Wie aktualisiert man die Informationen des Benutzers
- 18. Wie simuliert man eine in Wechat geöffnete Seite?
- 19. Wie erkennt man ein Gerät im Netzwerk?
- 20. wie Master-Seite im Browser anzuzeigen
- 21. Wie kann ich eine Datenbankabfrage in ASP.NET abbrechen, wenn der Browser des Benutzers die Verbindung trennt?
- 22. So öffnen Sie eine Sharepoint-Seite, indem Sie die Anmeldeinformationen des Benutzers im Hintergrund bereitstellen
- 23. Wie erkennt man Speicherlecks im Profiler?
- 24. Moodle, wie die Rolle des angemeldeten Benutzers
- 25. Wie erkennt man die Zugangskontrollmaschine?
- 26. Wie erhalte ich Informationen zum Browser des Benutzers in Flex?
- 27. Wie öffnet man die bevorzugte Mailanwendung des Benutzers unter Linux?
- 28. Wie erhält man die Verfügbarkeitsbenachrichtigung des Benutzers in iOs?
- 29. Wie erkennt man die "Browser-Plug-in" -Bibliotheksabhängigkeit vor der Ausführung
- 30. Wie lernt man die Sprache des Benutzers auf Asp.Net MVC?
Wie wäre es, wenn Ihre App mit der Zurück-Schaltfläche funktioniert? Wenn ich mich richtig erinnere, werden etwa 30% der Webnavigation mit Zurück/Vorlauf ausgeführt. Bitte brich meinen Browser Chrome nicht. – Eevee