Я строю пользовательский видеоплеер в React, и у меня возникают проблемы с выравниванием времени, отображаемого на парижке над панелью прогресса с фактическим временем поиска, используемом при щелчке. Положение.
Время, отображаемое на Hover, выглядит визуально правильно.
Однако, когда пользователь нажимает (используя Onchange), фактическое время поиска точно не совпадает с зависающим временем - обычно на небольшую фракцию второй. /> Пример: < /p>
const handleHoverProgress = (event) => {
if (!isPlayerReady) return;
const rect = inputProgressRef.current.getBoundingClientRect();
const x = event.clientX - rect.left;
const percentage = Math.max(0, Math.min(1, x / rect.width));
const min = parseFloat(inputProgressRef.current.min);
const max = parseFloat(inputProgressRef.current.max);
const step = parseFloat(inputProgressRef.current.step) || 0.001;
let value = min + percentage * (max - min);
value = Math.round(value / step) * step;
value = parseFloat(value);
indicadorRef.current.textContent = formatTime(value * duration);
indicadorRef.current.style.visibility = "visible";
let indicatorX = x - indicadorRef.current.offsetWidth / 2;
indicatorX = Math.max(0, Math.min(rect.width - indicadorRef.current.offsetWidth, indicatorX));
indicadorRef.current.style.left = `${indicatorX}px`;
};
< /code>
ReactPlayer Setup: < /p>
setPlayed(played)}
onDuration={setDuration}
onReady={() => setIsPlayerReady(true)}
controls={false}
width="100%"
height="100%"
progressInterval={100}
/>
< /code>
Ввод диапазона: < /p>
handleSeek(parseFloat(e.target.value))}
className="progress-bar"
/>
< /code>
То, что я попробовал
Сопоставление значения подъема инструментов со значением поиска с использованием одинакового процентного расчета. Обновления. Иногда это выключено на небольшую долю секунды или на одну секунду в зависимости от поведения округления. < /P>
Что я ищу для
Как я могу убедиться, что время, показанное на то, что точно соответствует времени, которое видео ищет, когда пользователь нажимает? или предложения оценены. Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/796 ... ayer-using
Как синхронизировать время наклонения и искать время в пользовательском видеоплеере React с использованием ReactPlayer? ⇐ Javascript
Форум по Javascript
1750583488
Anonymous
Я строю пользовательский видеоплеер в React, и у меня возникают проблемы с выравниванием времени, отображаемого на парижке над панелью прогресса с фактическим временем поиска, используемом при щелчке. Положение.
Время, отображаемое на Hover, выглядит визуально правильно.
Однако, когда пользователь нажимает (используя Onchange), фактическое время поиска точно не совпадает с зависающим временем - обычно на небольшую фракцию второй. /> Пример: < /p>
const handleHoverProgress = (event) => {
if (!isPlayerReady) return;
const rect = inputProgressRef.current.getBoundingClientRect();
const x = event.clientX - rect.left;
const percentage = Math.max(0, Math.min(1, x / rect.width));
const min = parseFloat(inputProgressRef.current.min);
const max = parseFloat(inputProgressRef.current.max);
const step = parseFloat(inputProgressRef.current.step) || 0.001;
let value = min + percentage * (max - min);
value = Math.round(value / step) * step;
value = parseFloat(value);
indicadorRef.current.textContent = formatTime(value * duration);
indicadorRef.current.style.visibility = "visible";
let indicatorX = x - indicadorRef.current.offsetWidth / 2;
indicatorX = Math.max(0, Math.min(rect.width - indicadorRef.current.offsetWidth, indicatorX));
indicadorRef.current.style.left = `${indicatorX}px`;
};
< /code>
ReactPlayer Setup: < /p>
setPlayed(played)}
onDuration={setDuration}
onReady={() => setIsPlayerReady(true)}
controls={false}
width="100%"
height="100%"
progressInterval={100}
/>
< /code>
Ввод диапазона: < /p>
handleSeek(parseFloat(e.target.value))}
className="progress-bar"
/>
< /code>
То, что я попробовал
Сопоставление значения подъема инструментов со значением поиска с использованием одинакового процентного расчета. Обновления. Иногда это выключено на небольшую долю секунды или на одну секунду в зависимости от поведения округления. < /P>
Что я ищу для
Как я могу убедиться, что время, показанное на то, что точно соответствует времени, которое видео ищет, когда пользователь нажимает? или предложения оценены. Спасибо!
Подробнее здесь: [url]https://stackoverflow.com/questions/79675022/how-to-synchronize-hover-time-and-seek-time-in-a-custom-react-video-player-using[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия