animationstart-and-animationend-events.html
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Animations Test: animation events - animationstart and animationend</title>
<link rel="author" title="Nokia Inc." href="http://www.nokia.com">
<link rel="author" title="Intel" href="http://www.intel.com">
<link rel="reviewer" title="Zhiqiang Zhang" href="mailto:zhiqiang.zhang@intel.com"> <!-- 2015-05-06 -->
<link rel="help" href="https://drafts.csswg.org/css-animations-1/#animation-name">
<link rel="help" href="https://drafts.csswg.org/css-animations-1/#animation-duration">
<link rel="help" href="https://drafts.csswg.org/css-animations-1/#events">
<meta name="flags" content="animated">
<meta name="assert" content="Check that animationstart event occurs at the start of an animation,
animationend event occurs when animation finishes.">
<style>
div {
animation-name: sample;
animation-duration: 10s;
background-color: blue;
height: 100px;
width: 100px;
position: relative;
}
@keyframes sample {
from {
left: 150px;
}
to {
left: 0px;
}
}
</style>
<body>
<p>
Test passes if there is a filled blue square,
which moves from right to left with text 'START'
and changes to 'END' when the animation is finished.
</p>
<div>Filler Text</div>
<script>
var div = document.getElementsByTagName("div");
div[0].addEventListener("animationstart", animationStart, true);
div[0].addEventListener("animationend", animationEnd, true);
function animationStart() {
div[0].innerHTML = "START";
}
function animationEnd() {
div[0].innerHTML = "END";
}
</script>
</body>