html5 audio - событие canplay не запускается в Safari (Mac Desktop) - PullRequest
3 голосов
/ 29 марта 2012

Я пытаюсь воспроизвести звук через аудио-тег html5 (используя Buzz в качестве оболочки, если это имеет какое-либо значение).

Поскольку звук рассчитан на начало с другого события, я былпрослушивание события canplay.

Отлично работает на Chrome и Firefox, но Safari не вызывает событие canplay.

Я добавил обработчики событий для всех возможных доступных аудио-событий инасколько я могу судить, он запускает только события loadstart и loadedmetadata.

Когда срабатывает loadedmetadata, звуковой элемент отлично выглядит в инспекторе, но на этом он останавливается.

Я предполагаю, что причина в том, что элемент имеет значение , а не auto-play ... по какой-то причине, по-видимому, это приводит к остановке Safari (если я автоматически запускаю все события,срабатывает).

У вас возникла та же проблема, и есть ли способ не воспроизводить звук автоматически, а запустить событие canplay?

Моя версия Safari - 5.1.3 (7534.53.10)

1 Ответ

1 голос
/ 30 марта 2012

Хорошо, решение проблемы заключается в том, чтобы просто установить звук для автоматического воспроизведения и прослушать событие canplay.Когда это срабатывает, я могу затем приостановить его и подождать, пока не сработает другое событие.

Пришлось немного переместить логику, но, похоже, это работает нормально.

...