Подтвердить что ты не робот

Как обнаружить, что звук закончил воспроизведение на веб-странице?

В моем проекте мне нужно встроить аудио (например: mp3 и т.д.) в веб-страницу. Когда пользователь посещает страницу, звук начнет воспроизводиться. Когда звук заканчивается, пользователь может ответить на вопросник (поля формы).

Есть ли способ проверить, закончилось ли воспроизведение звука с помощью jquery, чтобы вопросник появился после того, как пользователь прослушал весь звук?

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

Я вижу, что в jquery есть много аудио-плагинов, и я не могу быть уверен, что будет делать то, что я хочу здесь: http://plugins.jquery.com/plugin-tags/audio

Любые идеи приветствуются.

Спасибо.

4b9b3361

Ответ 1

Если вы используете аудиотекст html5, есть обработчик события "onended". Я не знаю, поддерживают ли браузеры.

Что-то вроде:

<audio src="xpto.mp3" onended="DoSomething();"></audio>

В последнем случае вы можете использовать swf, который может воспроизводить звук, и предупреждать ваш javascript, когда он достигнет конца.

Ответ 2

Вы также можете добавить прослушиватель событий jQuery следующим образом:

$("audio").on("ended", function() {
    console.log("All Done!");
});