Easing functions.
<script src="<module-dir>/lib/WebModule.js"></script>
<script src="<module-dir>/lib/Easing.js"></script>
<script>
var range = { start: 20, end: 300, time: 1000 };
var startValue = range.start;
var endValue = range.end;
var startTime = Date.now();
var currentTime = 0;
var endTime = range.time;
var div = document.body.appendChild( document.createElement("div") );
(function _tick() {
currentTime = Date.now() - startTime;
var finished = currentTime >= endTime;
var x = Easing["linear"](finished ? endTime : currentTime,
startValue,
endValue - startValue,
endTime);
div.style.left = x + "px";
if (finished) {
;
} else {
setTimeout(_tick, 0);
}
})();
</script>
importScripts("<module-dir>lib/WebModule.js");
importScripts("<module-dir>lib/Easing.js");
require("<module-dir>lib/WebModule.js");
require("<module-dir>lib/Easing.js");