<html>
<head>
  <title>Transition End Events</title>
  <style type="text/css" media="screen">
    .box {
      position: relative;
      left: 0;
      height: 100px;
      width: 100px;
      margin: 10px;
      background-color: blue;
      -webkit-transition-property: left;
      -webkit-transition-duration: 0.5s;
    }
  </style>
  <script src="transition-end-event-helpers.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript" charset="utf-8">
    
    var expectedEndEvents = [
      // [property-name, element-id, elapsed-time, listen]
      ["left", "box1", 0.5, false]
    ];
    
    function setupTest()
    {
      document.getElementById("container").addEventListener("webkitTransitionEnd", recordTransitionEndEvent, false);
      
      var box = document.getElementById('box1');
      box.style.left = '200px';
    }
    
    runTransitionTest(expectedEndEvents, 0.7, setupTest);
  </script>
</head>
<body>

<p>Initiating a 500ms transition on the left property of box1 and catching it on the parent.</p>

<div id="container">
  <div id="box1" class="box"></div>
</div>

<div id="result"></div>

</body>
</html>