Я оглядывался, и я начинаю волноваться, что это невозможно.
Есть ли способ, чтобы сделать стандартный <audio>
тег откаты ...Правильная загрузка для <audio>
<audio>
<source src='song.ogg' type='audio/ogg'></source>
<source src='song.mp3' type='audio/mp3'></source>
</audio>
... есть событие OnLoad. Я огляделся, и все, что я мог найти, это некоторые хаки, которые могут или не могут работать (они не для меня в Chrome) и событие canplaythrough
.
Причина, по которой я хочу, это потому, что я делаю презентацию, в которой есть много аудиоклипов для воспроизведения в определенных точках. Я не хочу, чтобы презентация начиналась до тех пор, пока все аудио не загрузится (в противном случае ситуация может выйти из синхронизации). Я хочу, чтобы клипы загружались по одному за раз, чтобы я мог создать своего рода панель загрузки. Я действительно не хочу прибегать к использованию Flash-звука, потому что это должно продемонстрировать чистые веб-технологии.
Итак, у меня есть эта функция loadAudio
, которая циклически проходит через массив загружаемых аудиофайлов audioQueue
. loadAudio
вызывается один раз, а затем он вызывает себя, пока не будут загружены все файлы. Проблема: я не нашел правильное событие для запуска загрузки следующего файла.
loadAudio = function(index)
{
mer = audioQueue[index];
var ob = "<audio id='" + mer + "'><source src='resources/sounds/" + mer + ".ogg' type='audio/ogg'></source><source src='resources/sounds/" + mer + ".mp3' type='audio/mp3'></source></audio>";
$("#audios").append(ob);
$("#" + mer).get(0).addEventListener('A WORKING EVENT RIGHT HERE WOULD BE NICE', function() { alert("loaded");
if (index + 1 < audioQueue) { loadAudio(index + 1); } }, false);
}
So. Есть ли вероятность правильной загрузки звука? Я в основном готов сделать что угодно, пока все еще есть HTML и Javascript.
была такая же проблема Некоторое время назад см .: http://stackoverflow.com/questions/9332167/preload-audio-files-event просто «разделяет» часть изображений. – m90
@ m90 Ahh, который отлично работает. Не могли бы вы включить это в ответ, чтобы я мог установить его как правильный? – Pinpickle
Возможный дубликат [Preload Audio Files/Event?] (Http://stackoverflow.com/questions/9332167/preload-audio-files-event) – Daniel