如何检测HTML5 <video>
元素播放完毕?当HTML5视频结束时检测到
回答
看一看这个Everything You Need to Know About HTML5 Video and Audio在Opera Dev站点下的“我想滚动我自己的控件”部分的文章。
这是有关章节:
<video src="video.ogv">
video not supported
</video>
那么你可以使用:
<script>
var video = document.getElementsByTagName('video')[0];
video.onended = function(e) {
/*Do things here!*/
};
</script>
onended
是所有媒体元素的HTML5标准的事件,看到HTML5 media element (video/audio) events文档。
<video src="video.ogv" id="myVideo">
video not supported
</video>
<script type='text/javascript'>
document.getElementById('myVideo').addEventListener('ended',myHandler,false);
function myHandler(e) {
// What you want to do after the event
}
</script>
那个浏览器是特定的吗? – UltimateBrent 2010-04-30 21:06:03
我已经更新了我的答案和更多信息。 – 2010-05-01 03:00:53
谢谢!这应该做到这一点! – UltimateBrent 2010-05-03 18:22:25
JQUERY
$("#video1").bind("ended", function() {
//TO DO: Your code goes here...
});
HTML
<video id="video1" width="420">
<source src="path/filename.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
事件类型:
-1。自从2011年发布jQuery 1.7以来,'.on()'比'.bind()'更受青睐。另外,请正确格式化代码。 – 2015-07-15 19:58:41
这里是一个完整的例子,我希望它有帮助=)。
<!DOCTYPE html>
<html>
<body>
<video id="myVideo" controls="controls">
<source src="your_video_file.mp4" type="video/mp4">
<source src="your_video_file.mp4" type="video/ogg">
Your browser does not support HTML5 video.
</video>
<script type='text/javascript'>
document.getElementById('myVideo').addEventListener('ended',myHandler,false);
function myHandler(e) {
if(!e) { e = window.event; }
alert("Video Finished");
}
</script>
</body>
</html>
这是一个简单的方法,它会在视频结束时触发。
<html>
<body>
<video id="myVideo" controls="controls">
<source src="video.mp4" type="video/mp4">
etc ...
</video>
</body>
<script type='text/javascript'>
document.getElementById('myVideo').addEventListener('ended', function(e) {
alert('The End');
})
</script>
</html>
在'EventListener'一行中用'pause'或'play'代替单词'ended'来捕获这些事件。 http://developer.apple:
您在此JS代码中有语法错误。 缺失)在参数列表之后 – frzsombor 2015-11-27 13:28:52
当视频结束
$("#myVideo").on("ended", function() {
//TO DO: Your code goes here...
alert("Video Finished");
});
$("#myVideo").on("loadedmetadata", function() {
alert("Video loaded");
this.currentTime = 50;//50 seconds
//TO DO: Your code goes here...
});
$("#myVideo").on("timeupdate", function() {
var cTime=this.currentTime;
if(cTime>0 && cTime % 2 == 0)//Alerts every 2 minutes once
alert("Video played "+cTime+" minutes");
//TO DO: Your code goes here...
var perc=cTime * 100/this.duration;
if(perc % 10 == 0)//Alerts when every 10% watched
alert("Video played "+ perc +"%");
});
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<video id="myVideo" controls="controls">
<source src="your_video_file.mp4" type="video/mp4">
<source src="your_video_file.mp4" type="video/ogg">
Your browser does not support HTML5 video.
</video>
</body>
</html>
- 1. Google VRView for Web - 当360°视频结束时检测到
- 2. Swift:检测视频结束
- 3. 当嵌入的Youtube视频结束时,Javascript可以检测到吗?
- 4. 当第一个视频结束时显示第二个HTML5视频
- 5. 当新推视图的转换结束时检测到
- 6. 当Youtube视频结束时隐藏iframe
- 7. HTML5视频结束事件不触发
- 8. 检测YouTube视频结束时 - javascript - 不起作用
- 9. 检测H264视频帧结束时RTP标记位不存在
- 10. 当视频播放结束时,Javascript结束事件android
- 11. 检测宽高比--HTML5视频
- 12. html5视频元素,开始和结束时间
- 13. 上传结束时检测
- 14. 检索视频直播已结束
- 15. Iframe/Javascript检查Youtube视频结束
- 16. 如何检测使用html5视频播放哪个视频源
- 17. 当Flash Player油门开始/结束时检测到
- 18. 如何检测渐进式Flash视频FLV的剪辑结束?
- 19. 播放视频后在黑莓网站检测“结束”事件
- 20. html5视频的当前/持续时间?
- 21. 检索HTML5视频时间的问题
- 22. 当webview视频变成ios8的全屏时检测到
- 23. 如何检测HTML5视频何时播放第一帧?
- 24. 仅当视频播放时使用视频控件(html5)
- 25. 重定向时,视频结束
- 26. 返回视频时,它的结束
- 27. YouTube视频结束时的操作!
- 28. YouTube视频结束时隐藏Div
- 29. 当vimeo视频结束时执行操作Wordpress
- 30. 当视频编码结束时发送电子邮件?
非常有用的文档与苹果的测试页面,您可以添加监听所有视频事件nicluding
ended, loadedmetadata, timeupdate
其中ended
函数被调用。 com/library/safari /#samplecode/HTML5VideoEventFlow/Listings/events_js.html#// apple_ref/doc/uid/DTS40010085-events_js-DontLinkElementID_5您只希望了解HTML5视频事件! – viebel 2012-09-23 15:04:51