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

    // Get the Howl we want to manipulate.
    var sound = self.playlist[self.index].howl;

    // Determine our current seek position.
    var seek = sound.seek() || 0;
    timer.innerHTML = self.formatTime(Math.round(seek));
    progress.style.width = (((seek / sound.duration()) * 100) || 0) + '%';

    // If the sound is still playing, continue stepping.
    if (sound.playing()) {
      requestAnimationFrame(self.step.bind(self));
    }
  }
function() {
    var self = this;

    // Get the Howl we want to manipulate.
    var sound = self.playlist[self.index].howl;

    // Determine our current seek position.
    var seek = sound.seek() || 0;
    timer.innerHTML = self.formatTime(Math.round(seek));
    progress.style.width = (((seek / sound.duration()) * 100) || 0) + '%';

    // If the sound is still playing, continue stepping.
    if (sound.playing()) {
      requestAnimationFrame(self.step.bind(self));
    }
  }
function ( ) { var self = this ; // Get the Howl we want to manipulate. var sound = self . playlist [ self . index ] . howl ; // Determine our current seek position. var seek = sound . seek ( ) || 0 ; timer . innerHTML = self . formatTime ( Math . round ( seek ) ) ; progress . style . width = ( ( ( seek / sound . duration ( ) ) * 100 ) || 0 ) + '%' ; // If the sound is still playing, continue stepping. if ( sound . playing ( ) ) { requestAnimationFrame ( self . step . bind ( self ) ) ; } }
The step called within requestAnimationFrame to update the playback position.
The step called within requestAnimationFrame to update the playback position .