Votre navigateur web maintient une pile (ou de la liste, si vous voulez) des pages web que vous avez visitées dans cette fenêtre. Disons que votre page d'accueil est google.com et à partir de là que vous visitez quelques autres sites: youtube.com, yahoo.com et cnn.com. Lors d'une visite à la dernière, la liste ressemble à ceci:
google.com -> youtube.com -> yahoo.com -> cnn.com
^
|
current page
Lorsque vous appuyez sur le bouton de Retour, le navigateur vous permet de revenir à la page précédente dans la liste, comme ceci:
google.com -> youtube.com -> yahoo.com -> cnn.com
^
|
current page
À ce stade, vous pouvez appuyer sur Retour pour vous emmener à youtube.com ou vous pouvez appuyer sur l'Avant de vous mettre à l'cnn.com de nouveau. Disons que vous appuyez sur pour Revenir une seconde fois:
google.com -> youtube.com -> yahoo.com -> cnn.com
^
|
current page
Maintenant, si vous allez à, disons, abc.com la liste des changements à ressembler à ceci:
google.com -> youtube.com -> abc.com
^
|
current page
Notez que les deux yahoo.com et cnn.com ont disparu de la liste. C'est parce que vous avez pris un nouvel itinéraire. Le navigateur ne gère une liste des pages que vous avez consultées pour arriver là où vous êtes maintenant, pas une histoire de chaque page, vous avez jamais été. Le navigateur ne sais rien à propos de la structure du site que vous visitez, ce qui peut conduire à certains comportement surprenant.
Vous êtes sur un site d'achats (ne.com comme un exemple court) qui a des catégories et sous-catégories de produits à parcourir. Le concepteur du site a judicieusement fourni chapelure près du haut de la fenêtre pour vous permettre de naviguer à travers les catégories. Vous commencez en haut de la page du site, cliquez sur le Matériel, puis de la Mémoire. La liste ressemble maintenant à ceci:
google.com -> ne.com -> ne.com/hw -> ne.com/hw/mem
^
|
current page
Vous voulez retourner à la catégorie Matériel, alors vous utilisez la chapelure pour aller jusqu'à la catégorie mère au lieu d'utiliser le bouton Retour. Maintenant, le navigateur de la liste ressemble à ceci:
google.com -> ne.com -> ne.com/hw -> ne.com/hw/mem -> ne.com/hw
^
|
current page
Selon la structure du site, vous êtes allé vers l'arrière (un niveau), mais le navigateur que vous allé de l'avant parce que vous avez cliqué sur un lien. Chaque fois que vous cliquez sur un lien ou tapez une URL dans la barre d'adresse, vous allez de l'avant aussi loin que le navigateur est concerné, si oui ou non ce lien vous amène à une page que vous avez déjà été.
Enfin, vous souhaitez retourner au site principal de la page (ne.com). Vous pouvez utiliser de la chapelure, mais cette fois vous cliquez sur le bouton -- il semble évident qu'il vous faudra monter d'un niveau, non? Mais d'où vient-il?
C'est d'abord source de confusion pour de nombreux utilisateurs (dont moi-même, quand il m'arrive de faire exactement cela) qu'il vous faut "descendre" un niveau, de revenir à la Mémoire de la catégorie. En regardant la liste des pages, il est facile de voir pourquoi:
google.com -> ne.com -> ne.com/hw -> ne.com/hw/mem -> ne.com/hw
^
|
current page
Pour revenir à la page principale en utilisant uniquement le bouton de Retour, il faudra deux pressoirs de plus, vous "de retour" à la catégorie Matériel et, enfin, à la page principale. Il semble donc évident pour nous les programmeurs de ce qu'il se passe, mais il surprend le diable hors d'utilisateurs réguliers tout le temps parce qu'ils ne réalisent pas que le navigateur ne sais rien à propos de la structure hiérarchique de ce site, ils se trouvent sur.
Ce serait génial si les navigateurs ne laissez concepteurs de site programme le bouton Retour pour faire la chose la plus évidente (vous prenez un niveau) plutôt que ce qu'il fait maintenant?
Edit: Un intervenant a demandé si le navigateur recharge la page ou tout simplement l'affiche de son cache local.
La réponse est: cela dépend. Les concepteurs de Site permet de spécifier si le navigateur doit mettre en cache la page ou pas. Pour les pages qui sont définies comme non mis en cache, le navigateur recharge la page à partir du serveur lorsque vous appuyez sur l'Arrière, comme si c'était la première fois que vous visitez. Pour les pages mises en cache, le navigateur l'affiche de la mémoire cache, ce qui est beaucoup plus rapide.