gpt4 book ai didi

javascript - 为什么 HTML5 进度条值在更新时跳跃和滞后?

转载 作者:行者123 更新时间:2023-11-28 05:24:11 24 4
gpt4 key购买 nike

我使用 html 元素作为视频的进度指示器。我试图在单击进度元素时将视频和进度元素更新到特定时间,例如用户点击 0:10 标记,视频/指示器会相应更新。我的 onclick 处理程序看起来像这样:

<progress
onClick={e => {
const percent = e.nativeEvent.offsetX / progressEl.offsetWidth;
progressEl.value = percent * 100;
videoEl.currentTime = percent * videoEl.duration;
}}
value="0"
min="0"></progress>

这是可行的,除了在短暂的一秒钟内进度指示器值在快速回到正确位置之前跳到用户点击的位置之前太远。我在 reactjs 组件中执行此操作(这就是我使用 nativeEvent 的原因)。

最佳答案

想通了。视频加载进度指示器的最大值被设置为视频的总时间而不是 100,因此我必须调整代码以将此总数考虑在内以确定正确的值。正确的代码应该是:

<progress
onClick={e => {
const percent = e.nativeEvent.offsetX / progressEl.offsetWidth;
progressEl.value = percent * videoEl.duration;
videoEl.currentTime = percent * videoEl.duration;
}}
value="0"
min="0"></progress>

关于javascript - 为什么 HTML5 进度条值在更新时跳跃和滞后?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38883649/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com