То, что вы могли бы сделать, это сценарий временной шкалы в JavaScript. Когда звук начинает воспроизводиться, вы устанавливаете тайм-ауты для каждого действия на временной шкале. Это потребует воспроизведения звука без каких-либо задержек.
Это будет выглядеть примерно так:
<div>one</div>
<div>two</div>
<div>three</div>
<script>
// this is the timeline
var actions = [ { time : 1, action : function() { $('div:eq(0)').css('color','red') } },
{ time : 1.5, action : function() { $('div:eq(1)').css('color','green') } },
{ time : 2, action : function() { $('div:eq(2)').css('color','blue') } } ];
$(document).ready( function() {
// execute the timeline
for( var i in actions ) {
setTimeout( actions[i].action, actions[i].time * 1000 );
}
});
</script>