Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Small JavaScript library for sprite based animations and panning.
branch: master


Small JavaScript library for simple but powerful sprite based animations and panning.

Motio takes an element and animates its background position to create an animation effect. All is super optimized for speed and chained to the requestAnimationFrame, with a polyfill for older browsers without it.

That being said, animating the element background is not the fastest possible way how to do this (canvas solutions are a lot faster), but it is sure as hell the most simple one, and compatible with everything from IE6 and up.


Motio has no dependencies, but there is an optional Motio jQuery plugin extension available.


Works everywhere.


Sprite animation mode:

var element = document.querySelector('#sprite');
var sprite = new Motio(element, {
    fps: 10,
    frames: 14
});;   // start animation
sprite.pause();  // pause animation
sprite.toggle(); // toggle play/pause
sprite.toStart(); // animate to 1st frame and stop
sprite.toEnd();   // animate to last frame and stop;    // animate to 11th frame and stop

Seamless background panning mode:

var element = document.querySelector('#panning');
var panning = new Motio(element, {
    fps: 30, // Frames per second. More fps = higher CPU load.
    speedX: -30 // Negative horizontal speed = panning to left.
});;    // start animation
panning.pause();   // pause animation
panning.toggle();  // toggle play/pause


Latest stable release:

jQuery plugin version:

When isolating issues on jsfiddle, you can use this URL:


Can be found in the docs directory.


Please, read the Contributing Guidelines for this project.

Something went wrong with that request. Please try again.