Bronnen voor webanimaties

De Web Animations API biedt krachtige primitieven om imperatieve animaties vanuit JavaScript te beschrijven - maar wat betekent dat? Ontdek welke bronnen voor u beschikbaar zijn, waaronder de demo's en codelabs van Google.

Achtergrond

In de kern biedt de API de methode Element.animate() . Laten we een voorbeeld bekijken, waarbij de achtergrondkleur van rood naar groen wordt geanimeerd:

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

Deze methode wordt ondersteund in alle moderne browsers, met een geweldige polyfill-fallback (daarover later meer). Native ondersteuning voor deze methode (en het bijbehorende spelerobject) werd algemeen beschikbaar als onderdeel van Chrome 39 . Het is ook standaard beschikbaar in Opera en wordt actief ontwikkeld voor Firefox. Dit is een krachtige primitief die een plaatsje in je gereedschapskist verdient.

Codelabs

Er is een groeiend aantal codelabs beschikbaar voor de Web Animations API . Dit zijn handleidingen op eigen tempo die verschillende concepten in de API demonstreren. In de meeste van deze codelabs gebruik je statische inhoud en verbeter je deze met animatie-effecten.

Deze codelabs en gerelateerde links of bronnen zijn absoluut de beste plaats om te beginnen als u de nieuwe primitieven die voor u beschikbaar zijn in Webanimaties wilt begrijpen. Voor een idee van wat je zou kunnen bouwen, bekijk dit op Android geïnspireerde onthullingseffect:

Voorbeeld van codelabresultaat

Dus als je net begint, zoek dan niet verder!

Demo's

Als je op zoek bent naar inspiratie, bekijk dan zeker de op materiaal geïnspireerde webanimatiedemo's , waarvan de bron wordt gehost op GitHub . Deze demonstreren een verscheidenheid aan verbazingwekkende effecten en u kunt de broncode van elke demo inline bekijken.

De demo's omvatten een kleurrijk draaiend sterrenstelsel , een roterende aarde , of zelfs gewoon een verscheidenheid aan effecten op een gewoon oud element.

Polyvulling

Om goede ondersteuning in alle moderne browsers te garanderen, kunt u een polyfill-bibliotheek gebruiken. De Web Animations API heeft momenteel een polyfill beschikbaar die deze naar alle moderne browsers brengt, inclusief Internet Explorer, Firefox en Safari.

Als u avontuurlijk ingesteld bent, kunt u de web-animations-next polyfill gebruiken, die ook functies bevat die nog moeten worden afgerond, zoals de samenstelbare GroupEffect en SequenceEffect constructors. Voor een vergelijking tussen de twee polyfills, zie de homepage .

Als u polyfill in uw code wilt gebruiken, heeft u een paar opties.

  1. Gebruik een CDN, zoals cdnjs , jsDelivr , of target een specifieke release via rawgit.com

  2. Installeer via NPM of Bower

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

In alle gevallen kunt u eenvoudig de polyfill in een scripttag opnemen vóór enige andere code-

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

Andere bronnen

Als je een meer technische introductie wilt lezen, bekijk dan de W3C-specificatie .

Dan Wilson heeft ook een groot aantal artikelen over webanimaties geschreven, onder meer over het gebruik ervan naast de nieuwe CSS motion-path eigenschap . Voor enkele voorbeelden van het gebruik van motion-path , bekijk het document van Eric Willigers .