amp-bodymovin-animation

Edit on Github
Open in Playground

Introduction

Embed Bodymovin animations in your AMP HTML files. The <amp-bodymovin-animation> component embeds an AirBnB Bodymovin animation player, which renders an animation from JSON generated by Adobe After Effects. The doc describing this element can be found here and the actions supported by this element can be found on the AMP Actions and Events page here.

Setup

Import the amp-bodymovin-animation component in the header.

<script async custom-element="amp-bodymovin-animation" src="https://cdn.ampproject.org/v0/amp-bodymovin-animation-0.1.js"></script>

Basic Usage

Example 1: Embed Bodymovin animations via the src attribute

Example

<amp-bodymovin-animation layout="fixed"
  width="200"
  height="200"
  src="/json/bodymovin_red_circle.json">
</amp-bodymovin-animation>

Attributes

This section covers how you can customize the animation produced by bodymovin for your needs.

  • src - The path to the exported Bodymovin animation object. Must be https protocol.
  • loop - Indicates whether the animation should be looping or not. By default, this attribute is set to true. Values for this attribute can be: true, false, or a number value. If a number is specified, the animation loops that number of times.
  • noautoplay - By default, an animation autoplays. If this attribute is added the video waits for an action to start playing.

Example 2: Animation only loops five times.

Example

<amp-bodymovin-animation layout="responsive"
  width="1920"
  height="1080"
  src="/json/bodymovin_happy_2016.json"
  loop="5">
</amp-bodymovin-animation>