Javascript HTML5视频结束

Javascript HTML5视频结束,javascript,html,video,Javascript,Html,Video,我正在尝试从HTML5视频标签收听视频“结束”事件。在测试过程中,它似乎会非常不定期地发射。大多数时候,它根本没有被发送。我已经用AdobeMedia编码器将我的.mov编码为mp4 有人知道为什么它可能不起作用吗?我应该在媒体编码器外面对我的文件进行编码以获得更好的结果吗 这就是我收听结束偶数的方式(Nel是视频元素;): 这是基本的HTML im使用: <video id="v1"></video> Im使用代码动态设置视频src。比赛进行得很好,有时我会得到最

我正在尝试从HTML5视频标签收听视频“结束”事件。在测试过程中,它似乎会非常不定期地发射。大多数时候,它根本没有被发送。我已经用AdobeMedia编码器将我的.mov编码为mp4

有人知道为什么它可能不起作用吗?我应该在媒体编码器外面对我的文件进行编码以获得更好的结果吗

这就是我收听结束偶数的方式(Nel是视频元素;):

这是基本的HTML im使用:

<video id="v1"></video>

Im使用代码动态设置视频src。比赛进行得很好,有时我会得到最后的结果,但并不总是如此


谢谢

视频有时会在实际持续时间之前停止播放。大约0.0000025秒之前,这意味着未发送结束事件

要解决这个问题,我将持续时间四舍五入,并按设置的间隔检查当前时间

//duration = 5.26 ( rounded down from 5.2600041)
if(this.video.currentTime >= this.duration) {
  //VIDEO ENDED
}

为什么它有时会在实际持续时间之前停止?实际上,我检查了currentTime和duration在ended事件未触发时是否相等。所以一种解决方法是使用setInterval之类的工具,检查这些值是否等于到达头部的值
//duration = 5.26 ( rounded down from 5.2600041)
if(this.video.currentTime >= this.duration) {
  //VIDEO ENDED
}