I usually just do something like this:
var loop = function() {
for (var i=0; i<1000; i++) {
// do stuff
}
setTimeout(loop, 0);
}
It might not be as fast in some cases, but it works for me.