Try this http://jsfiddle.net/aamir/2jt7d/3/
var i = 0,
max = 1000,
timer,
range = document.getElementById('range');
function iteration() {
range.value = i;
if (i < max) {
i++;
timer = setTimeout(iteration, 100);
}
}
range.max = max;
range.onmousedown = function () {
clearTimeout(timer);
}
range.onmouseup = function () {
i = this.value;
iteration();
}
iteration();