Safari не обрабатывает видео события html5 должным образом? - PullRequest
0 голосов
/ 02 июня 2018

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

Проблема заключается в том, что ни один изВидео события HTML5, похоже, запускаются правильно, только в Safari.Все остальные браузеры работают нормально.

Вот код, который я использую:

video.addEventListener('loadedmetadata', function() {
    updateVideoProgress();
    var interval = setInterval(function() {storeVideoProgress()}, 1000);
}, false);

if (video.readyState > 3) {
    updateVideoProgress();
    var interval = setInterval(function() {storeVideoProgress()}, 1000);
}

Обратите внимание, что не имеет значения, какое событие я слушаю.Я пробовал «загруженные данные», «canplay», «canplaythrough» и т. Д., И ни один из них не работает в Safari.В любом другом браузере все эти события запускаются (но в зависимости от события может нарушить функциональность моего кода).

TL: DR - Кто-нибудь когда-либо испытывал Safari, не запускающий видео-события HTML5, в то время как все другие браузерысправиться с ними нормально?Что я могу сделать, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 16 апреля 2019

canplay событие будет работать для Chrome и Firefox.Я просто воспринимаю loadedmetadat как специфическое для iOS событие canplay, поскольку iOS, похоже, сама по себе не вызывает canplay.

Видео воспроизводится нормально после того, как я повторил свою логику canplay в loadedmetadata.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...