2012-04-11 15 views
15

Ho fatto una semplice applicazione per il mio iphone usando jQuery Mobile e PhoneGap. funziona molto bene, ma l'applicazione utilizzata la seguente per la transizione a un'altra pagina e che era lento come l'inferno:Come velocizzare un'animazione di transizione della pagina?

<a data-role="button" id="about_link" data-transition="slide" 
    href="#page3" data-icon="gear" data-iconpos="left"> 
    Settings 
</a> 

Basta un semplice a sta facendo la magia qui e che ha portato i 400ms strane ritardo ecc ..

Ora dopo molte letture ho fatto il pulsante a uno div e gestito l'evento click per rendere il pulsante più veloce.

$("#about_link").live("touchstart", function(){ 
    slideTo('#page3',false); 
}); 
function slideTo(page,reverse){ 
    $.mobile.changePage(page, { 
     transition: "slide", 
     reverse: reverse 
    }); 
} 

La differenza è significativa, ma è ancora troppo lenta per i miei gusti. Sembra che jQuery Mobile attenda che l'intera animazione del pulsante (al passaggio del mouse e su cui si fa clic) finisca prima di passare all'altra pagina.

Ora le mie domande:

  1. È TouchStart il modo più veloce? Ho usato altre librerie come fastclick ma non era neanche super veloce.
  2. L'animazione del pulsante è il badguy qui? Posso disabilitare allora?
  3. Potete darmi consigli? Google non è mio amico su questo particolare problema ...

gr.

+0

Cercando avrebbe funzionato un tipo diverso di transizioni di pagina? Intendo come la dissolvenza dello – uday

+0

slideUp sembra un po 'più veloce, ma potrebbe essere solo un'illusione a causa della diversa direzione e della maggiore distanza. Fade sembra essere lo stesso. –

risposta

33

In realtà è in css jquery di cellulare:

.in, .out { 
    -webkit-animation-timing-function: ease-in-out; 
    -webkit-animation-duration: 350ms !important; 
} 

Basta modificare la ms e si sta bene.

+2

+1 Fantastico, stavo per pubblicare la stessa cosa! – uday

+0

Ehi amico, mi dispiace per l'incredibile risposta in ritardo: D Questo ha aiutato, ma ancora su Iphone sento che le cose non sono ottimali. Ho app che rispondono istantaneamente, ho ancora un po 'di ritardo. Altri suggerimenti? –

+7

Ho dovuto usare! Importante per sovrascrivere la durata: -webkit-animation-duration: 660ms! Importante; – appcropolis

Problemi correlati