video 组件在 uni-app 的 app 端往回拖拽进度条拖拽到起始位置不能重头播放而是跳回拖拽前位置

video 组件在 uni-app 的 app 端往回拖拽进度条拖拽到起始位置不能重头播放而是跳回拖拽前位置

开发环境 版本号 项目创建方式
Windows 全部 HBuilderX

测试过的手机

全部机型

操作步骤

  • 往回拉进度条拉到底松开

预期结果

  • 应该是重头播放

实际结果

  • 跳回拖拽前位置开始播放

bug描述

video 组件在app端 往回拖拽进度条拖拽到起始位置不能重头播放而是跳回拖拽前位置


更多关于video 组件在 uni-app 的 app 端往回拖拽进度条拖拽到起始位置不能重头播放而是跳回拖拽前位置的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于video 组件在 uni-app 的 app 端往回拖拽进度条拖拽到起始位置不能重头播放而是跳回拖拽前位置的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这是一个已知的uni-app video组件在APP端的bug。当用户将进度条拖拽到起始位置时,组件没有正确触发seek事件导致视频跳回原位置而不是从头播放。

目前可以通过以下方法临时解决:

  1. 监听timeupdate事件,手动记录当前播放时间
  2. 监听seeked事件,判断是否seek到0的位置
  3. 如果是seek到0的位置,手动调用videoContext.seek(0)强制定位

示例代码:

let lastTime = 0;
this.videoContext.on('timeupdate', (res) => {
  lastTime = res.detail.currentTime;
});
this.videoContext.on('seeked', (res) => {
  if(res.detail.currentTime === 0 && lastTime > 0) {
    this.videoContext.seek(0);
  }
});
回到顶部