Ich habe im Internet nach dieser Frage gesucht, aber nichts gefunden:
Was ist die Logik der Zurück-Taste? Was passiert, wenn wir in einem Webbrowser auf die Schaltfläche "Zurück" klicken?
Ich würde wirklich gerne mehr darüber verstehen.
Danke dir.
browser
back-button
Pierre Thibault
quelle
quelle
Antworten:
Ihr Webbrowser führt einen Stapel (oder eine Liste, wenn Sie so wollen) der Webseiten, die Sie in diesem Fenster besucht haben. Angenommen, Ihre Homepage ist google.com und von dort aus besuchen Sie einige andere Websites: youtube.com, yahoo.com und cnn.com. Beim Besuch des letzten sieht die Liste folgendermaßen aus:
Wenn Sie die Zurück-Taste drücken, kehrt der Browser wie folgt zur vorherigen Seite in der Liste zurück:
An diesem Punkt kannst du erneut auf Zurück drücken, um zu youtube.com zu gelangen, oder auf Weiterleiten, um dich erneut auf cnn.com zu bringen. Angenommen, Sie drücken ein zweites Mal auf Zurück:
Wenn Sie jetzt beispielsweise zu abc.com gehen, ändert sich die Liste folgendermaßen:
Beachten Sie, dass sowohl yahoo.com als auch cnn.com aus der Liste entfernt wurden. Dies liegt daran, dass Sie eine neue Route eingeschlagen haben. Der Browser verwaltet nur eine Liste der Seiten, die Sie besucht haben, um dorthin zu gelangen, wo Sie sich gerade befinden, und nicht einen Verlauf jeder Seite, auf der Sie jemals waren. Der Browser weiß auch nichts über die Struktur der Website, die Sie besuchen, was zu überraschendem Verhalten führen kann.
Sie befinden sich auf einer Einkaufsseite (ne.com, als kurzes Beispiel), auf der Kategorien und Unterkategorien von Produkten durchsucht werden können. Der Site-Designer hat oben im Fenster sorgfältig Brotkrumen bereitgestellt , damit Sie durch die Kategorien navigieren können. Sie beginnen auf der oberen Seite der Site, klicken auf Hardware und dann auf Speicher. Die Liste sieht jetzt so aus:
Sie möchten zur Kategorie Hardware zurückkehren, verwenden also die Breadcrumbs, um zur übergeordneten Kategorie zu gelangen, anstatt die Schaltfläche Zurück zu verwenden. Jetzt sieht die Browserliste folgendermaßen aus:
Entsprechend der Site-Struktur sind Sie rückwärts gegangen (eine Ebene höher), aber zum Browser sind Sie vorwärts gegangen, weil Sie auf einen Link geklickt haben. Jedes Mal, wenn Sie auf einen Link klicken oder eine URL in die Adressleiste eingeben, werden Sie in Bezug auf den Browser weitergeleitet, unabhängig davon, ob dieser Link Sie zu einer Seite führt, auf der Sie bereits waren.
Schließlich möchten Sie zur Hauptseite der Website (ne.com) zurückkehren. Sie könnten die Semmelbrösel verwenden, aber diesmal klicken Sie auf die Schaltfläche Zurück - es scheint offensichtlich, dass Sie damit eine Ebene höher gehen sollten, oder? Aber wohin führt es dich?
Für viele Benutzer (ich selbst eingeschlossen, wenn ich genau das tue) ist es zunächst verwirrend, dass Sie eine Ebene zurück in die Kategorie "Speicher" gelangen. Wenn Sie sich die Liste der Seiten ansehen, können Sie leicht erkennen, warum:
Um nur mit der Schaltfläche Zurück zur Hauptseite zurückzukehren, müssen Sie zwei weitere Male drücken, um zur Kategorie Hardware und schließlich zur Hauptseite zurückzukehren. Uns Programmierern scheint es so offensichtlich zu sein, was los ist, aber es überrascht die normalen Benutzer ständig, weil sie nicht erkennen, dass der Browser nichts über die hierarchische Struktur der Website weiß, auf der sie sich gerade befinden.
Wäre es großartig, wenn Browser den Website-Designern erlauben würden, die Schaltfläche Zurück zu programmieren, um das Offensichtliche zu tun (Sie auf eine höhere Ebene zu bringen), anstatt was auch immer es jetzt tut?
Bearbeiten: Ein Kommentator fragte, ob der Browser die Seite neu lädt oder sie einfach aus dem lokalen Cache anzeigt.
Die Antwort ist, es kommt darauf an. Site-Designer können angeben, ob der Browser die Seite zwischenspeichern soll oder nicht. Bei Seiten, die als nicht zwischengespeichert festgelegt sind, lädt der Browser die Seite vom Server neu, wenn Sie auf Zurück klicken, als wäre es das erste Mal, dass Sie sie besuchen. Bei zwischengespeicherten Seiten zeigt der Browser diese aus dem Cache an, was viel schneller ist.
quelle
Ich stelle es mir gerne so vor, als würde ich meine letzte Anfrage erneut stellen. Wenn Sie ein einfaches GET ausführen, wird wahrscheinlich das gleiche zurückgegeben wie beim letzten Mal (abzüglich dynamischer Inhalte). Wenn Sie einen POST durchgeführt haben, senden Sie das Formular (nach Bestätigung) erneut an den Server.
quelle
Die Grundidee besteht darin, zur letzten Seite oder logischen Site-Unterteilung zurückzukehren.
Wenn Sie sich Google Mail ansehen, sehen Sie, ob Sie eine Suche durchführen und auf eine Nachricht klicken. Klicken Sie dann auf die Schaltfläche "Zurück", um zu der von Ihnen durchgeführten Suche zurückzukehren.
Wenn Sie in den meisten Browsern darauf klicken, wird entweder die letzte http-Anforderung erneut gesendet oder ein Cache geladen, wenn der Browser Websites zwischenspeichert.
quelle
Ich denke, der einfachste Weg, dies zu erklären, ist der Pseudocode:
quelle
Ein Verlauf der angezeigten Seiten wird in einer stapelartigen Form gespeichert. Wenn Sie die oberen drei Seiten "einblenden" (z. B. A, B, C) und dann zu einer anderen Seite D wechseln, können Sie nicht wieder zu B gelangen, indem Sie vorwärts klicken.
quelle
Als Entwickler sollten Sie sicherstellen, dass Ihre Webanwendung funktioniert, unabhängig davon, wie der Browser mit der Schaltfläche Zurück umgeht :-) Sendet er die Anforderung erneut? Ist die neue Anfrage mit der alten identisch oder unterscheidet sie sich in irgendeiner Weise? Wird der Browser den Benutzer auffordern, den erneuten POST zu bestätigen? Welche Elemente der Seite werden erneut angefordert und welche werden aus dem Cache geladen? Wird der Browser meine Cache-Steuerungs-Header respektieren?
Die Antworten auf diese Frage hängen von der Marke, der Version eines Browsers und den Benutzereinstellungen ab. Entwerfen Sie Ihre Software so, dass all dies nicht so wichtig ist.
Entschuldigung für die nicht sehr direkte Antwort, aber hier gibt es bereits einige klare Antworten.
quelle
Ein Browser hat die Seiten immer zum Speichern gespeichert. Wenn wir auf die Schaltfläche "Zurück" klicken, wird die Anforderung für die vorherige Seite nicht an den Server gesendet. Stattdessen wird nur der Cache angezeigt, in dem die Seiten gespeichert wurden, und er folgt der LIFO-Regel Geben Sie uns diese Seite zuerst, indem Sie den Zurück-Knopf drücken, den wir zuletzt geöffnet haben
quelle
Der Browser lädt die zuletzt angezeigte Seite vor der aktuellen und folgt dann einer möglichen Umleitung.
Mir scheint der Punkt der Frage irgendwie zu fehlen.
quelle