Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The target property of a KeyframeEffect interface represents the element or pseudo-element being animated. It may be null for animations that do not target a specific element. It performs as both a getter and a setter, except with animations and transitions generated by CSS.


var targetElement = document.getElementById("elementToAnimate");

var keyframes = new KeyframeEffect( targetElement, keyframeBlock, timingOptions );

// returns #elementToAnimate;

// assigns keyframes a new target = newTargetElement;


An Element, CSSPseudoElement, or null.


In the Follow the White Rabbit example, whiteRabbit sets the target element to be animated:

var whiteRabbit = document.getElementById("rabbit");

var rabbitDownKeyframes = new KeyframeEffect(
    { transform: 'translateY(0%)' },
    { transform: 'translateY(100%)' }
  { duration: 3000, fill: 'forwards' }

// returns <div id="rabbit">Click the rabbit's ears!</div>;


Web Animations Level 2 (Web Animations 2)
# dom-keyframeeffect-target

Browser compatibility

BCD tables only load in the browser

See also