diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:47:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:47:29 +0000 |
commit | 0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d (patch) | |
tree | a31f07c9bcca9d56ce61e9a1ffd30ef350d513aa /layout/reftests/position-dynamic-changes/vertical/animate.js | |
parent | Initial commit. (diff) | |
download | firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.tar.xz firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.zip |
Adding upstream version 115.8.0esr.upstream/115.8.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'layout/reftests/position-dynamic-changes/vertical/animate.js')
-rw-r--r-- | layout/reftests/position-dynamic-changes/vertical/animate.js | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/layout/reftests/position-dynamic-changes/vertical/animate.js b/layout/reftests/position-dynamic-changes/vertical/animate.js new file mode 100644 index 0000000000..a53d6a1800 --- /dev/null +++ b/layout/reftests/position-dynamic-changes/vertical/animate.js @@ -0,0 +1,59 @@ +var currentOffset = null; +var maxOffset = null; +var property = "top"; + +var rfa = null; +if (window.requestAnimationFrame) { + rfa = requestAnimationFrame; +} 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"); +} + |