Ho scritto un sito Web che ha una funzione che fa scorrere la visualizzazione degli utenti nella parte superiore della pagina. La chiamata in questione è:jQuery che anima la parte superiore fino a 0 non funziona su Windows Phone
$('html,body').animate({scrollTop:0}, 150, 'swing');
Questo funziona bene su tutti i browser desktop, ma su Windows Phone, scorre solo l'utente su circa 180 pixel, poi si ferma. Ho provato a sostituire la funzione con:
$('html,body').scrollTop(0);
E scatta verso l'alto su desktop, ma scorre verso l'alto al telefono. Credo che questa esigenza di Internet Explorer Mobile tenti di animare senza problemi lo scorrimento e causa il problema. Se questo è il caso (o se no, qualcuno potrebbe correggermi), come posso sovrascrivere questa funzione per far funzionare l'animazione?
EDIT
Anche se la sua, sembra di lavorare in una capacità limitata, ho sostituito il codice non è l'ideale scorrimento con questo:
$('html,body').animate({scrollTop:0}, 150, 'swing', function() {
$('html,body').scrollTop(0);
});
Ma sarebbe bene sapere se c'è un'opzione per disabilitare lo scorrimento regolare in Mobile IE in modo programmatico.
sì, questo è simile a quello che ho fatto alla fine. Tranne che, invece di avere la chiamata 'setTimeout' al di fuori di' .animate', faceva parte dell'argomento di callback completo in '.animate'. Sembra funzionare bene, ma sì, è fastidioso avere il ritardo in seguito. Un programma di rilevamento dispositivi (lato server) sarebbe bello includere uno script diverso, purché tutta l'animazione della finestra sia gestita in uno script indipendente – topherg
Yah, per qualche motivo non funzionerebbe all'interno della richiamata sull'emulatore. Dovrebbe avere un vero W8Phone entro la fine della settimana per vedere se questo fa la differenza. – LocalPCGuy
A volte, ciò che ho trovato accade è che l'animazione inizia, quindi si fermerà in un punto. Penso che sia perché, mentre scorre, si interrompe, quindi si ferma invece. Potrebbe essere necessario uno script per determinare il numero di pixel tra il luogo in cui ci si trova, dove si sta andando, quindi se è possibile calcolare la velocità (che non dovrebbe richiedere troppo tempo), è possibile determinare il tempo di scorrimento di WP. Quindi, con un po 'di padding (diciamo 5ms) si può chiamare 'scrollTo (0)'. Avrà un po 'di gioco. Goditi il tuo nuovo telefono – topherg