Zasoby animacji internetowych

Interfejs Web Animations API udostępnia potężne prymitywy do opisywania impersywnej animacji w JavaScriptzie. Co to oznacza? Dowiedz się więcej o dostępnych zasobach, w tym o demonstracjachcodelabs Google.

Tło

Interfejs API udostępnia metodę Element.animate(). Zobaczmy przykład, w którym kolor tła zmienia się z czerwonego na zielony.

var player = document.body.animate(
    [{'background': 'red'}, {'background': 'green'}], 1000);

Ta metoda jest obsługiwana we wszystkich nowoczesnych przeglądarkach, a w razie potrzeby można użyć polyfilla (więcej informacji na ten temat znajdziesz poniżej). Natywna obsługa tej metody i obiektu player stała się powszechnie dostępna w Chrome 39. Jest on dostępny w wersji natywnej w przeglądarce Opera, a w przypadku przeglądarki Firefox jest aktywnie rozwijany. To potężny prymityw, który zasługuje na miejsce w Twoim zestawie narzędzi.

Codelabs

Więcej informacji o interfejsie Web Animations API znajdziesz w rosnącej liczbie laboratoriów kodowania. To samouczki, które pokazują różne zagadnienia związane z interfejsem API. W większości tych laboratoriów kodu będziesz ulepszać statyczne treści za pomocą efektów animacji.

Te laboratoria kodu oraz powiązane linki i zasoby to najlepsze miejsce na rozpoczęcie nauki nowych prymitywów dostępnych w animacji internetowej. Aby dowiedzieć się, co możesz stworzyć, zapoznaj się z tym efektem wyświetlania inspirowanym Androidem:

Podgląd wyniku ćwiczenia z programowania

Jeśli dopiero zaczynasz, nie musisz szukać dalej.

Prezentacje

Jeśli szukasz inspiracji, zapoznaj się z demonstracjami animacji internetowych w stylu Material Design, których źródła znajdziesz na GitHubie. Prezentują one wiele niesamowitych efektów. Możesz wyświetlić kod źródłowy każdego z demo.

Demo zawiera kolorowo obracającą się galaktykę, obracającą się Ziemię lub nawet różne efekty na zwykłym elemencie.

Watolina

Aby zapewnić odpowiednią obsługę we wszystkich nowoczesnych przeglądarkach, możesz użyć biblioteki polyfill. Interfejs Web Animations API ma dostępną już teraz implementację zastępczą, która umożliwia korzystanie z niego we wszystkich nowoczesnych przeglądarkach, w tym w Internet Explorerze, Firefoksie i Safari.

Jeśli masz ochotę na przygodę, możesz użyć biblioteki polyfill web-animations-next, która zawiera też funkcje, które nie zostały jeszcze sfinalizowane, takie jak kompozytowe konstruktory GroupEffectSequenceEffect. Porównanie tych dwóch polyfill znajdziesz na stronie głównej.

Aby użyć polyfill w kodu, masz kilka opcji.

  1. Użyj CDN, np. cdnjs, jsDelivr lub skieruj na konkretny pakiet za pomocą rawgit.com.

  2. Instalowanie za pomocą NPM lub Bower

     $ npm install web-animations-js
     $ bower install web-animations-js
     ```
    

We wszystkich przypadkach możesz po prostu umieścić polyfill w tagu skryptu przed dowolnym innym kodem.

<script src="https://cdn.jsdelivr.net/web-animations/latest/web-animations.min.js"></script>
<script>
    document.body.animate([
    {'background': 'red'},
    {'background': 'green'}
    ], 1000);
</script>

Inne zasoby

Jeśli chcesz przeczytać bardziej techniczne wprowadzenie, zapoznaj się ze specyfikacją W3C.

Dan Wilson napisał też serie artykułów na temat animacji internetowych, w tym o tym, jak używać ich razem z nową właściwością CSS motion-path. Przykłady użycia motion-path znajdziesz w artykule Erica Willigersa.