See if you can get this so it's only written once.

```
var self = this;
setTimeout(function tick(){
  self.next();
  if( self.active() ) setTimeout(tick, self.speed);
}, this.speed);
```

Could be written a bit nicer, but yeah. Add a check in the timeout to see if the slideshow is still visible/active etc.