In un'applicazione per PhoneGap che è quasi terminata, inserisco dinamicamente gli elementi nella dom durante lo scorrimento. Per questo uso i callback 'touchmove' e 'scroll'. Il problema che sto affrontando attualmente è che la dom si aggiorna solo dopo che lo scorrimento è terminato. Dopo aver fatto qualche ricerca, ora penso che la causa è che PhoneGap non aggiorna la dom dopo aver terminato lo scroll.Aggiorna dom durante lo scorrimento nell'app per PhoneGap
Qualcuno di voi ha affrontato questo problema da sé e ha trovato una soluzione per questo?
Aggiornamento
Il risultato dei miei test era che JavaScript non viene aggiornata a tutti durante lo scorrimento. Mi piacerebbe sapere perché questo è, e quale sarebbe un buon modo per eseguire javascript e aggiornare il dom durante lo scorrimento. Se riesci a pensare ad un altro modo per aggiornare gli elementi quando il viewport è vicino a loro, anche quello andrebbe bene. Al momento tutto si aggiorna quando l'utente smette di scorrere, ma se l'utente non lo fa, incontra lo spazio della pagina 'vuoto'.
Richiesta di codice di rilevamento di scorrimento
Questo è quello che ho attualmente in uso per rilevare lo scorrimento.
document.addEventListener("touchmove", callback, false); // This works on android, but on iOS the callback is called when scrolling stops. Usually multiple times, because they stack while scrolling and not being executed. I see the event being executed during touchmove, but when the viewport begins moving, the callbacks pause until after the scrolling ends.
document.addEventListener("scroll", callback, false); // This is only executed once, and only when scrolling has fully stopped; the viewport is not moving anymore. On android this is executed all the time during scrolling, which is good.
La combinazione di aggiornare solo durante touchmove, e un'altra volta quando scorrimento si è fermato sarebbe sufficiente. La possibilità che l'utente scorra così velocemente (dopo il touchmove) che incontra lo spazio vuoto è molto piccola. Il problema è che la richiamata dell'evento touchmove non viene eseguita durante lo scorrimento.
Ora sono abbastanza sicuro che questo è il caso. Anche il mio console.logs mostra solo dopo lo scorrimento si ferma. –
Che cosa stai usando per rilevare lo scorrimento? Puoi mostrarci il tuo codice? – caiocpricci2
Seduto qui con lo stesso problema, l'hai risolto in qualche modo? – mattias