Changer de navigateur comportement du bouton retour pour mon application web?

Im faire une application comme " de la page web. La page est plus large que la fenêtre d'affichage du navigateur qui a son dépassement caché. En cliquant sur les différents liens modifie le CSS pour animer les différentes sections. Voici un très simple démo:
http://smartpeopletalkfast.co.uk/pos/

À ce stade, je travaille sur une démo, pas un site de production. Je veux intercepter le bouton précédent du navigateur, donc si vous avez accédé à un article, vous seriez de retour à la section précédente plutôt que de laisser la page web. Dans un monde parfait, ce serait le cas avec les mêmes animations ive utilisé pour la navigation des articles.

Cela peut-il être atteint? De la recherche de je ne pense pas qu'il est possible d'intercepter et de désactiver le navigateur par défaut du bouton retour.

Je sais y a beaucoup de messages sur la désactivation du bouton précédent du navigateur sur ce site et normalement la réponse est NE pas! Cependant à différentes sections dans ma page, c'est comme naviguer vers des pages distinctes, donc je pense que ce que Im essayant d'atteindre est en accord avec les attentes de l'utilisateur.

La façon dont quelque chose de similaire semble normalement être réalisé avec AJAX basé sur des applications est à l'aide de HTML5 Histoire de l'API. Comme je comprends, vous avez besoin d'ajouter des Url avec des fragments de l'historique du navigateur, donc quelque chose comme monsite.com#section2. Je ne suis pas sûr que cela fonctionnera pour moi cependant, comme le défilement horizontal n'est pas fondée sur le fragment de liens tels que le défilement vertical peut être. Peut-être que je pourrais
l'utilisation de JavaScript pour détecter l'URL se termine par un fragment de la même #section2 et de modifier le CSS de sorte que la 2e section est dans la fenêtre d'affichage? Je suppose qu'il n'y aurait aucun moyen de les animer à ce bien?

OriginalL'auteur Evanss | 2012-03-20