2013-05-17 13 views
6

Con l'arrivo di jQuery Mobile 1.3, è stata aggiunta la funzione .navigate(). Ho sentito che è il modo consigliato di cambiare pagina e sembra che abbiano affrontato il problema del trasferimento dei dati tra le pagine.jQuery Mobile naviga o cambia pagina?

Il problema è che, poiché è stato semplificato, come posso accedere alle altre opzioni che cambiano la pagina? Mi piacerebbe davvero usare la parte {data} di .navigate(), ma vorrei anche impostare alcune opzioni che faccio normalmente con changePage (come transizione, direzione, ecc.).

Attualmente ho un "router" che ascolta tutti gli eventi di navigazione, quindi passa lungo tutti i dati che riceve sulla pagina successiva (facendo anche qualche altra logica semplice, come l'impostazione del controller di visualizzazione).

C'è qualche proprietà nascosta in [, opzioni] che sarei in grado di impostare cose semplici come direzione e transizione?

risposta

9

$.mobile.navigate è ancora una nuova funzione, in base ai commenti del codice è anche un work in progress.

La transizione è attiva tra le opzioni nascoste;

$.mobile.navigate("#bar", { transition : "slide", info: "info about the #bar hash" }); 

esempio di funzionamento: http://jsfiddle.net/Gajotres/g5vAN/

D'altra parte, il cambiamento di direzione inversa non è ancora implementata, predefinito viene applicato valore falso.

+0

Grazie! Rimarrò con changePage per ora fino a quando navigare è pienamente in grado di fare ciò che cambiaPage. – Chris

0

L'altro modo sarebbe quello di utilizzare:

$.mobile.pageContainer.pagecontainer("change", "target", 
       {transition: "flow", changeHash: false, reload: true}) 

Link

0

Utilizzare il Pagecontainer Contatti Widget aggiunto in v1.4.

$(":mobile-pagecontainer").pagecontainer("change", "jquerypageIdentifier",{ options in key value format }); 

es

$(":mobile-pagecontainer").pagecontainer("change", "#nextpage",{ transition: "slide",role: "dialog" }); 
Problemi correlati