<!DOCTYPE html>
<meta name="viewport" content="width=device-width, user-scalable=no">
<link rel="stylesheet" type="text/css" href="resources/tablet.css">
<script src="resources/perf_test_helper.js"></script>
<script src="resources/web_animations_api_check.js"></script>

<container id="container"></container>

<script>
var N = PerfTestHelper.getN(1000);
var duration = 1000;

function startAnimation(element, delay) {
  target.animate([
    {opacity: 0},
    {opacity: 1},
  ], {
    duration: duration,
    iterations: Infinity,
    delay: delay,
  });
}

for (var i = 0; i < N; i++) {
  var target = document.createElement('target');
  container.appendChild(target);
  startAnimation(target, i * (duration / N) - duration);
}

PerfTestHelper.signalReady();
</script>
