| <!doctype html> |
| <html lang="en"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title>Test event generation with suspendAnimations()/resumeAnimations() for animations</title> |
| <style type="text/css" media="screen"> |
| #box { |
| position: relative; |
| height: 100px; |
| width: 100px; |
| background-color: blue; |
| -webkit-animation-duration: 0.1s; |
| -webkit-animation-timing-function: linear; |
| -webkit-animation-direction: alternate; |
| -webkit-animation-iteration-count: 2; |
| -webkit-animation-name: "move"; |
| } |
| @-webkit-keyframes "move" { |
| from { left: 0; } |
| to { left: 500px; } |
| } |
| #log { |
| margin-top: 20px; |
| height: 300px; |
| width: 500px; |
| border: 2px solid gray; |
| } |
| </style> |
| <script type="text/javascript" charset="utf-8"> |
| |
| function suspend() |
| { |
| if (window.internals) |
| internals.suspendAnimations(); |
| } |
| |
| function resume() |
| { |
| if (window.internals) |
| internals.resumeAnimations(); |
| } |
| |
| function startTest() |
| { |
| if (window.testRunner) { |
| testRunner.dumpAsText(); |
| testRunner.waitUntilDone(); |
| } |
| |
| setTimeout(suspend, 40); |
| setTimeout(resume, 100); |
| setTimeout(function() |
| { |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| }, 350); |
| } |
| |
| function logEvent(e, phase) |
| { |
| var log = document.getElementById('log'); |
| log.innerHTML = log.innerHTML + phase + ' animation ' + e.animationName + '<br>'; |
| } |
| |
| |
| </script> |
| </head> |
| <body onload="startTest()"> |
| <p> |
| Events generated are displayed. There should be one start event one iteration event and one end event. There |
| should not be a start event generated when the animation is resumed. |
| <div id="box" |
| onwebkitanimationstart="logEvent(event, 'start'); return false;" |
| onwebkitanimationiteration="logEvent(event, 'iteration'); return false;" |
| onwebkitanimationend="logEvent(event, 'end'); return false;" |
| > |
| </div> |
| <p>Log</p> |
| <div id="log"> |
| </div> |
| </body> |
| </html> |