У меня есть буквальный объект JS, который создает и воспроизводит мой список воспроизведения. На странице HTML у меня есть список со всеми моими треками. Когда я нажимаю на какую-то дорожку, все работает нормально, но когда я нажимаю на одну дорожку и жду конца дорожки, следующая дорожка не воспроизводится. это часть моего кода:
playSound : function(track){
console.log("Play this song");
DG_PLAYER.TrackPlaying = track;
soundManager.destroySound('MySoundID');
DG_PLAYER.Sound = soundManager.createSound({
id:'MySoundID',
url:track.sound,
autoLoad: true,
autoPlay: true,
onload: function() { console.log('sound loaded!', this); },
onfinish: function(){
console.log('end song');
var nextSong = DG_PLAYER.getNextSong();
DG_PLAYER.playSound(nextSong);
},
onfailure : function(){console.log('some error')},
whileloading : function(){console.log('i m loading');},
whileplaying : function(){console.log('i m playing');}
});
},
Если я изменяю строку в событии onfinish следующим образом: setTimeOut(function(){DG_PLAYER.playSound(nextSong);},2000), все работает нормально. Кто-нибудь может мне помочь?
Еще одна вещь, когда заканчивается первая песня и вызывается Play для следующей песни, дорожка не загружается (нет сообщения от события onload). Спасибо, и извините за мой плохой английский. А.
ОК, я пытаюсь добавить «flashVersion: 9» при установке, и это устраняет проблему, но в IE 8 теперь появляется сообщение о недействии сценария.