var div = document.getElementsByTagName("div")[0],
i = 0,
movimiento = function(rapidez){
var tiempo = (function(){
switch (rapidez){
case "rapido":
return 1;
break;
case "normal":
return 5;
break;
case "lento": default:
return 10;
break;
}
})(),
intervalo = setInterval(function(){
i++;
div.style.left = i + "px";
if(i % 100 === 0) clearInterval(intervalo);
}, tiempo);
};
div.style.left = div.style.left || 0;
div.addEventListener("mouseover", function(){
movimiento("lento");
}, false);
<div></div>
div{
width: 22.5em;
height: 22.5em;
position: relative;
background: url(http://oi54.tinypic.com/28k3pjo.jpg);
}