diff -r 000000000000 -r 6474c204b198 layout/reftests/position-dynamic-changes/vertical/animate.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/layout/reftests/position-dynamic-changes/vertical/animate.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,61 @@ +var currentOffset = null; +var maxOffset = null; +var property = "top"; + +var rfa = null; +if (window.requestAnimationFrame) { + rfa = requestAnimationFrame; +} else if (window.mozRequestAnimationFrame) { + rfa = mozRequestAnimationFrame; +} else if (window.webkitRequestAnimationFrame) { + rfa = webkitRequestAnimationFrame; +} else if (window.msRequestAnimationFrame) { + rfa = msRequestAnimationFrame; +} else if (window.oRequestAnimationFrame) { + rfa = oRequestAnimationFrame; +} + +function animate(from, to, prop) { + currentOffset = from; + maxOffset = to; + if (prop) { + property = prop; + } + rfa(animateStep); +} + +function animateStep() { + if (currentOffset <= maxOffset) { + document.getElementById("child").style[property] = currentOffset + "px"; + currentOffset += 10; + rfa(animateStep); + } else { + document.documentElement.removeAttribute("class"); + } +} + +function toAuto(prop) { + if (prop) { + property = prop; + } + rfa(setToAuto); +} + +function setToAuto() { + document.getElementById("child").style[property] = "auto"; + document.documentElement.removeAttribute("class"); +} + +function fromAuto(to, prop) { + maxOffset = to; + if (prop) { + property = prop; + } + rfa(setFromAuto); +} + +function setFromAuto() { + document.getElementById("child").style[property] = maxOffset + "px"; + document.documentElement.removeAttribute("class"); +} +