G4mm4R4y Ответов: 1

JavaScript аудио реклама мешает


В проекте, над которым я работаю, у меня есть js-файл, который должен воспроизводить музыкальное произведение, и когда это произведение заканчивается, его место занимает следующее.

var soundtrack = {
 0: new Audio("./music/piece1.ogg"),
 2: new Audio("./music/piece2.ogg"),
 1: new Audio("./music/piece3.ogg"),
 3: new Audio("./music/piece4.ogg")
}
var currentTrack = 0;
function startMusic(){
 soundtrack[currentTrack].play();
 soundtrack[currentTrack].addEventListener("ended", function(){ nextSong()});
}
function nextSong(){
 currentTrack += 1;
 if(currentTrack == 4){
     currentTrack = 0;
 }
 soundtrack[currentTrack].play();
}
$( document ).ready(function() {
 setTimeout(function() { startMusic(); }, 15500);
});

Примечание: мое использование объекта "саундтрек" может быть нетрадиционным, но была ошибка с использованием массива, поэтому я попробовал это сделать, и это сработало.

Первая пьеса прекрасно проигрывается, а следующая начинается прекрасно. Примерно через 10 секунд игра просто прекращается.

Любая помощь в решении этой проблемы будет очень признательна, спасибо!

Примечание: Я знаю, что не все фигуры будут играть друг за другом, я жду, пока эта проблема не будет исправлена, прежде чем продолжить.

Что я уже пробовал:

Упорядочивания частей

Гугл

сайте StackOverflow

Удаление прослушивателя событий, как кто-то предположил, Может быть проблемой

1 Ответов

Рейтинг:
1

Patrice T

Цитата:
Первая пьеса прекрасно проигрывается, а следующая начинается прекрасно. Примерно через 10 секунд игра просто прекращается.
Я не знаю, почему вторая часть останавливается через 10 секунд, но я знаю причину, почему она не переходит к третьей части.
В startMusic(), вы добавляете прослушиватель событий к части 0, когда вы должны добавить прослушиватель событий к каждой части, так как у вас есть 4 audio объекты.


G4mm4R4y

"Примечание: Я знаю, что не все фигуры будут играть друг за другом, я жду, пока эта проблема не будет исправлена, прежде чем продолжить."

Если это было недостаточно ясно, я прошу прощения за путаницу

Patrice T

Без аудиофайлов невозможно воспроизвести вашу проблему.
Возможно даже, что второй аудиофайл находится всего в 10 секундах или поврежден.

G4mm4R4y

Хотя все возможно, я сомневаюсь, что они испорчены... Видите, как цифры не в порядке? Это потому, что я попытался переключить их, чтобы посмотреть, так ли это.

Я попробую получить расширение .ogg для wmp, чтобы посмотреть, действительно ли это файлы.

G4mm4R4y

Я подтвердил, что звук в порядке