Я пытаюсь воспроизвести аудио файлы (я пробовал много).Все они в формате mp3.Я проверил следующее на локальном хосте MAMP, а также просто запустив его в браузере.
Я использую следующий код JavaScript:
var testSound = new Audio();
testSound.src = "a.mp3"
setTimeout(testSound.play.bind(testSound),100)
Это возвращает ошибку:
Uncaught (in promise)
Попытка поймать это:
var testSound = new Audio();
testSound.src = "a.mp3"
setTimeout(playSound,100)
function playSound () {
testSound.play().then(response => {
}).catch(e => {
console.log(e);
})
}
ничего не возвращает (""
)
Но если я сейчас поверну к консоли и просто наберу:
testSound.play()
Звук воспроизводится так, как и должно быть.
Даже если я прокомментирую третью строку первого фрагмента кода, например:
//setTimeout(testSound.play.bind(testSound),100)
Редактировать:
Даже если люди не знают, что такое решение, мне все равно было бы интересно узнать, могут ли они воспроизвести ошибку.
Редактировать 2:
Кстати, проблема не сохраняется в Firefox или Safari.