examples/sprite/sprite.js
function() {
    var self = this;

    // Loop through all active sounds and update their progress bar.
    for (var i=0; i<self.sounds.length; i++) {
      var id = parseInt(self.sounds[i].id, 10);
      var offset = self._sprite[self.sounds[i].dataset.sprite][0];
      var seek = (self.sound.seek(id) || 0) - (offset / 1000);
      self.sounds[i].style.width = (((seek / self.sound.duration(id)) * 100) || 0) + '%';
    }

    requestAnimationFrame(self.step.bind(self));
  }
function() {
    var self = this;

    // Loop through all active sounds and update their progress bar.
    for (var i=0; i<self.sounds.length; i++) {
      var id = parseInt(self.sounds[i].id, 10);
      var offset = self._sprite[self.sounds[i].dataset.sprite][0];
      var seek = (self.sound.seek(id) || 0) - (offset / 1000);
      self.sounds[i].style.width = (((seek / self.sound.duration(id)) * 100) || 0) + '%';
    }

    requestAnimationFrame(self.step.bind(self));
  }
function ( ) { var self = this ; // Loop through all active sounds and update their progress bar. for ( var i = 0 ; i < self . sounds . length ; i ++ ) { var id = parseInt ( self . sounds [ i ] . id , 10 ) ; var offset = self . _sprite [ self . sounds [ i ] . dataset . sprite ] [ 0 ] ; var seek = ( self . sound . seek ( id ) || 0 ) - ( offset / 1000 ) ; self . sounds [ i ] . style . width = ( ( ( seek / self . sound . duration ( id ) ) * 100 ) || 0 ) + '%' ; } requestAnimationFrame ( self . step . bind ( self ) ) ; }
The step called within requestAnimationFrame to update the playback positions.
The step called within requestAnimationFrame to update the playback positions .