jQuery.mobile.navigate( url [, data ] )
Modifiez l'URL et suivez l'historique. Fonctionne pour les navigateurs et la nouvelle API sans historique
Historique du navigateur reculant lors du changement deux fois du fragment de hachage, puis journal fournissant les données d'événement de navigation
// Starting at http://example.com/ // Alter the URL: http://example.com/ => http://example.com/#foo $.mobile.navigate( "#foo", { info: "info about the #foo hash" }); // Alter the URL: http://example.com/#foo => http://example.com/#bar $.mobile.navigate( "#bar" ); // Bind to the navigate event $( window ).on( "navigate", function( event, data ) { console.log( data.state.info ); console.log( data.state.direction ) console.log( data.state.url ) console.log( data.state.hash ) }); // Alter the URL: http://example.com/#bar => http://example.com/#foo window.history.back(); // From the `navigate` binding on the window, console output: // => "info about the #foo hash" // => "back" // => "http://example.com/#bar // => "#bar"
Détourner un clic de lien en utilisant la méthode de navigation puis charger le contenu
// Starting at http://example.com/ // Define a click binding for all anchors in the page $( "a" ).on( "click", function( event ) { // Prevent the usual navigation behavior event.preventDefault(); // Alter the url according to the anchor's href attribute, and // store the data-foo attribute information with the url $.mobile.navigate( this.attr( "href" ), { foo: this.attr( "data-foo" ) }); // Hypothetical content alteration based on the url. E.g, make // an ajax request for JSON data and render a template into the page. alterContent( this.attr( "href" ) ); });