Событие, которое вы слушаете после того, как вы получили событие (или «воспроизведение» или «поиск»), зависит от состояния видео до момента клика.
Если у вас есть новый, неиграемый видео элемент с атрибутом preload, установленным в «none», то первые данные, которые вы собираетесь получать из сети, - это метаданные. поэтому вы можете прослушивать событие «загруженные метаданные».
Если preload установлен в «метаданные», вы можете загрузить в зависимости от браузера и платформы. (например, Safari на iPad не будет загружать метаданные или что-либо еще до первого взаимодействия с пользователем.) В этом случае вы хотите прослушивать «загруженные метаданные» или «прогресс». Нельзя было даже слушать «загруженные данные», но я думаю, что «прогресс» срабатывает в первую очередь.
Если для предварительной загрузки установлено значение «авто» или если вы уже сыграли часть видео, вы можете указать может есть фактические видео данные. И хотя вы, вероятно, будете иметь данные в текущей точке на временной шкале, вы можете иметь или не иметь ее в поиске. Это зависит, по крайней мере, от того, как далеко вперед (или позади) вы ищете, как быстро поступают данные и сколько свободного места в браузере есть в кеше.
Если в указанное время нет данных (вы можете проверить это заранее, если хотите, с .buffered
, см. TimeRanges), то следующее событие, которое вы видите, будет либо «загруженоdata», либо «progress», возможно а затем «карусель». Если в целевое время поиска есть достаточно данных, буферизуемых, то вопрос на самом деле не применяется, потому что ничего другого не будет передано.
Однако в любом из вышеприведенных случаев, когда имеется достаточное количество данных для отображения кадра в новой точке на этой временной шкале и что данные были декодированы, произойдет «искаженное» событие. Поэтому, если вы должны выбрать только один (нет причин, по которым вы не можете использовать больше), это тот, который нужно выбрать.
Вы хотите отметить это событие: https://developer.mozilla.org/en-US/docs/Web/Reference/Events/loadeddata? – Ian
Ничего себе, спасибо, я не уверен, что это будет работать для навигации по видео, но это, безусловно, полезно. –