2015-08-10 15 views
7

Chciałam tylko wiedzieć, czy istnieje sposób na monitorowanie postępu animacji elementu. Wszystko, co wiem, to animationstart i animationend, czy jest jakiś rodzaj animationprogress? Nie ma zdarzeniaAnimacja CSS3 "postęp" callback

Odpowiedz

2

. Według numeru W3 specification istnieją trzy typy zdarzeń: AnimationEvent. Istnieje , animationend i animationiteration. animationiteration jest uruchamiany zamiast animationend, gdy animacja ma się powtórzyć.

Prawdopodobnie można użyć wartości setInterval(), która została ustawiona dla części czasu animacji (na przykład 10% czasu animacji), a następnie zostanie wywołana w każdym punkcie animacji. Możesz zapytać o postęp animacji w dowolnym z tych zdarzeń timera, jeśli potrzebujesz dokładnej pozycji animacji.

Jeśli chcesz uzyskać dokładniejszą synchronizację, możesz przerwać animację na wiele sekwencyjnych animacji i użyć animationend na każdym kawałku jako wskaźnika postępu i wyzwalacza, aby rozpocząć kolejną fazę animacji.

+1

To źle, że już myślałem o rozwiązaniu setTimeout, chociaż szukałem o wiele lepszej drogi = D. Dzięki – masterpreenz