Obecnie tworzę aplikację internetową przy użyciu html5 i jQuery dla iPad Safari. Mam problem, w którym duże obszary przewijania powodują, że elementy poza ekranem pojawiają się z opóźnieniem, gdy przewijam je w dół.
Rozumiem przez to, że jeśli mam wiersz obrazów (lub nawet element div z gradientem), który jest poza ekranem, kiedy przewijam do niego w dół (lub w górę), oczekiwanym zachowaniem elementu jest pojawienie się na ekranie jako Przewijam do niego.
Jednak widzę, że element nie pojawia się, dopóki nie zdejmę palca z ekranu i rolka nie zakończy wszystkich animacji.
Jest to dla mnie bardzo zauważalny problem, przez co całość wygląda na nierówną, chociaż tak nie jest. Domyślam się, że iPad Safari próbuje coś zrobić, aby zaoszczędzić pamięć. Czy jest jakiś sposób, w jaki mógłbym zapobiec wystąpieniu tej niepewności? Dodatkowo byłbym wdzięczny, gdyby ktoś mógł rzucić światło na to, co tak naprawdę próbuje zrobić iPad Safari.
<svg>
elementów, które wykazywały podobne opóźnione rysowanie / renderowanie. Niestety, *:not(html) { ... }
doprowadziło to do różnego rodzaju dziwnych zachowań, jak zauważył @JonathanTonge, które mogą wystąpić. Wydaje się jednak, że wybranie tylko <svg>
elementów i użycie translate3d(0, 0, 0,);
rozwiązało moje problemy z przewijaniem.