Comment modifier l'historique mobile jQuery Comportement du bouton Précédent

Je vais commencer cette off avec des j'ai fait des recherches un peu, mais pas de solution qui résout ce qui semble comme il devrait être un simple JQM modification.

J'ai un vin examen webapp qui a la vue suivante de l'utilisateur courant:
http://5buckchuck.com/

Type de vin > liste de Vins > Vin de Détails > le Vin examen (redirection via django backto ) > Vin de Détails mise à jour à partir de l'examen

Ce que je veux, c'est quand l'utilisateur appuie sur le bouton de retour, il devrait revenir à la liste des vins. Ce qui se passe actuellement, c'est le Vin de la vue de Détail est rechargé. Il prend en appuyant trois fois sur retour pour revenir à la Liste des Vins. 🙁

Mes pensées pour résoudre ce furent deux:

  1. D'en réunir les 3 derniers éléments de l'histoire de la pile, si le dernier élément de l'histoire de la pile de Vin Examen. J'ai eu un moment difficile essayer de connaître le fonctionnement de la dernière histoire de l'objet pour obtenir les pageURL. J'ai le sentiment que cette solution est un peu trop fragile.
    var last_hist = $.mobile.urlHistory.getActive();
    last_hist.data.pageURL;
  2. La deuxième pensée a été de remplacer le bouton retour de comportement de sorte que le bouton de retour à partir du Vin de la vue de Détail serait toujours revenir à la liste des Vins de vue
    $('div#wine_detail').live('pageshow',function(event, ui){      
      $("a.ui-btn-left").bind("click", function(){
        location.replace("/wines/{{wine.wine_type}}/#");
      });   
    });

Il est probable que la meilleure façon de le faire, mais je suis un peu à court d'idées.

Mise à jour:
Je continue donc à travailler sur ce avec assez peu de résultats. Sur chose que j'ai trouvé était c'est ce que j'ai fondamentalement besoin pour travailler: window.history.go(-3)

à partir de la console c'est exactement ce dont j'ai besoin.

J'ai donc essayé de liaison, c'est le bouton de retour comme tel:

$('div#wine_detail').live('pageshow',function(event, ui){
  var last = $.mobile.urlHistory.stack.length - 1;
  var last_url = $.mobile.urlHistory.stack[last].url;
  var review_url = /review/g;
   if (last_url.match(review_url) )
     {
       $('div#wine_detail a.ui-btn-left').bind( 'click', function( ) {  
         console.log("click should be bound and going back in time...")
         window.history.go(-2);
         });
   }
   else
   {
     console.log('err nope its: ' + last_url);
   }
 });

Pas de dés, quelque chose interupts de la transaction...

source d'informationauteur bmartinek