RAF test

by gbos

HTML

<div id="test">
text
</div>

CSS

#test {
  width: 100px;
  height: 100px;
  background: yellow;
}

JavaScript

var start = null;
var element = document.getElementById("test");
element.style.position = 'absolute';

function step(timestamp) {
  if (!start) start = timestamp;
  var progress = timestamp - start;
  element.style.left = Math.min(progress/10, 200) + "px";
  if (progress < 2000) {
    window.requestAnimationFrame(step);
  }
}

window.requestAnimationFrame(step);