收藏
回答

video组件事件问题。触发bindended事件后还会触发bindtimeupdate

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug video 工具 8.0.3 3.4.0

视频播放触发 “bindended事件” 后还会触发 “bindtimeupdate事件” 。在有些应用场景下就有问题;

比如:记录用户视频观看时长场景,如果视频总时长为100秒,

bindended事件对应的处理是:把用户观看时长改为100。

bindtimeupdate事件对应的处理是:把用户的观看时长改为当前的时间(通过bindtimeupdate事件的event.detail.currentTime获取)。

当用户观看完,就触发bindended事件,之后又触发bindtimeupdate事件,

正确的结果是:用户观看时长为100。而最终的结果变成:用户观看时长为98(也可能是97,98.5,99.6等很多结果)。

建议:视频播放触发 “bindended事件” 后停止触发 “bindtimeupdate事件”。

回答关注问题邀请回答
收藏

2 个回答

  • 社区技术运营专员-Jahozheng
    社区技术运营专员-Jahozheng
    09-21

    请提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    09-21
    有用
    回复
  • H1HAO 🇨🇳
    H1HAO 🇨🇳
    09-21

    如果确实有这个问题,你可以data定义一个字段ended=false 在播放结束的时候改为true,然后bindtimeupdate验证下ended状态是否修改,先临时这样操作吧

    09-21
    有用
    回复
登录 后发表内容