У меня есть элемент <video>
на странице HTML, и я хочу записать фрагменты видео, которое воспроизводит пользователь. У меня есть объект «play session», который содержит отметку времени начала и окончания:
class PlaySession {
constructor(start) {
this.start = start;
this.end = null;
}
finish(timestamp) {
this.end = timestamp;
}
}
Когда я «заканчиваю» сеанс воспроизведения, я отправляю значения start
и end
конечной точке API для сохранения. Я получаю конечную метку времени, слушая событие pause
, вызванное элементом video.
У меня возникла проблема с поиском. Если видео воспроизводится в данный момент, и пользователь щелкает в другом месте в скруббере времени, событие pause
вызывается , но currentTime
на видео установлено там, где пользователь щелкнул.
Например:
- Пользователь начинает смотреть видео.
- Пользователь смотрит 5 секунд видео.
- Пользователь нажимает на видео до 30 секунд.
pause
событие происходит, currentTime
равно 30
вместо ожидаемого 5
.
Существует также проблема, заключающаяся в том, что если пользователь щелкнет предыдущую точку в видео, я получу end
отметку времени, которая на меньше start
отметку времени.
При поиске, есть ли способ получить currentTime
до , когда происходит поиск?