Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 让html5视频在结束时进入第一帧?_Javascript_Jquery_Html5 Video - Fatal编程技术网

Javascript 让html5视频在结束时进入第一帧?

Javascript 让html5视频在结束时进入第一帧?,javascript,jquery,html5-video,Javascript,Jquery,Html5 Video,我有一个简单的视频html5标签,绑定到“结束”事件: 因为我通过点击按钮来“显示”和“隐藏”,所以我想让它返回到最后一个函数的第一帧,这样下次出现时它就会从开头开始(现在它从结尾开始,当它从最后一帧转到第一帧时,会引起令人讨厌的闪烁) 使用jQuery可以做到这一点吗 提前谢谢 您可以使用 $('#video').show().trigger("play").bind('ended', function () { this.currentTime = 0; } 只有在loadedm

我有一个简单的视频html5标签,绑定到“结束”事件:

因为我通过点击按钮来“显示”和“隐藏”,所以我想让它返回到最后一个函数的第一帧,这样下次出现时它就会从开头开始(现在它从结尾开始,当它从最后一帧转到第一帧时,会引起令人讨厌的闪烁)

使用jQuery可以做到这一点吗


提前谢谢

您可以使用

$('#video').show().trigger("play").bind('ended', function () { 
    this.currentTime = 0;
}
只有在loadedmetadata事件已通过时,才能设置currentTime。

这会出现在头部:

<script>
function Reset() { document.getElementById('MyVideo').load(); }
</script>

函数Reset(){document.getElementById('MyVideo').load();}
这会出现在视频标签中:

<video ID="MyVideo" onended="Reset()" [plus your other parameters] >


非常感谢,真的做到了。我只需要在这里放一个字。停顿();在this.currentTime=0;之后;,在我的代码上表现得很有魅力。为了解决这个问题,我绞尽脑汁了好几个小时,因为截止日期越来越近,再次感谢@克劳勒,我的密码不适合你?编辑:忽略。我误解了你的问题;)@MarcusEkwall没问题Marcus,谢谢你的回复@Niels我只是碰巧发现Chrome和IE中的代码有问题,他们似乎忽略了this.currentTime=0;部分我运行了一个警报('this.currentTime');在该函数中,它返回与零不同的数字(1.67890等)。它在FFox中工作得非常好;该值已正确设置为零,视频的行为符合预期。知道为什么会这样吗?您提到了一些关于loadedmetadata事件的内容,我有没有办法确保该事件已正确通过??提前谢谢!loadedmetadata是在加载视频数据时,获取最大时间和更多数据。如果视频播放到最后,则此数据已准备就绪。如果要循环,请使用
$(“#视频”)[0]。循环=true。但这告诉您应该能够使用currentTime。或者你可以试试
this.play();这个。暂停()
<video ID="MyVideo" onended="Reset()" [plus your other parameters] >