Проблема со значением длительности аудиоэлемента HTML5 в iOs - PullRequest
5 голосов
/ 30 августа 2011

Я занимаюсь разработкой веб-приложения для устройства iOs, но у меня возникла проблема с аудиотэгом html5 ... Я разработал собственный аудиоплеер и управляю песней с помощью функций JavaScript. С рабочим столом Safari приложение работает хорошо, но на мобильном телефоне Safari оно не распознает продолжительность звука; значение свойства duration - NaN. Я должен играть, остановить и воспроизвести аудио для получения правильного значения. Вероятно, причина в том, что предварительная загрузка мультимедиа отключена на Safari Mobile ... Есть ли способ прочитать правильное значение при первом выстреле?

Ответы [ 2 ]

7 голосов
/ 29 февраля 2012

Это ошибка в iOS ... даже внутри функции, которая вызывается при событии onloadedmetadata, вы МОЖЕТЕ ПОЛУЧИТЬ NaN.

В моем случае это происходит случайным образом, когда пользователь выбирает новый mp3 и код динамически устанавливает свойство src. Звук воспроизводится нормально, но НЕКОТОРЫЕ, длительность возвращается NaN, облажая любой индикатор прогресса, который зависит от этого значения.

2 голосов
/ 01 сентября 2011

Медата доступна после запуска этого события:

 loadedmetadata

Подробнее

https://developer.mozilla.org/en/Introducing_the_Audio_API_Extension

...