使用javascript实现监控视频播放并打印日志


Posted in Javascript onJanuary 05, 2015

最近在做一个项目,要求监控视频的播放事件并能够打印LOG日志,经过一番思索,使用javascript实现了此功能,代码如下:

HTML:

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=UTF-8">

<title>Multi Source</title>

</head>

<body>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

<video src="http://www.w3school.com.cn/i/movie.mp4" controls autoplay></video>

</body>

</html>

JS:

<script type="text/javascript">

window.addEventListener("load",getVideoEvent);

function getVideoEvent(){

var videoes=document.getElementsByTagName("video");

for (var i = 0; i < videoes.length; i++) {

showEventLog("video"+(i+1),videoes[i]);

}

}

function showEventLog(videoNum,Media){

eventTester = function(e){

Media.addEventListener(e,function(){

console.log(videoNum+":"+e);

});

}

eventTester("loadstart");    //客户端开始请求数据

eventTester("progress");    //客户端正在请求数据

eventTester("suspend");    //延迟下载

eventTester("abort");    //客户端主动终止下载(不是因为错误引起),

eventTester("error");    //请求数据时遇到错误

eventTester("stalled");    //网速失速

eventTester("play");    //play()和autoplay开始播放时触发

eventTester("pause");    //pause()触发

eventTester("loadedmetadata");    //成功获取资源长度

eventTester("loadeddata");    //

eventTester("waiting");    //等待数据,并非错误

eventTester("playing");    //开始回放

eventTester("canplay");    //可以播放,但中途可能因为加载而暂停

eventTester("canplaythrough"); //可以播放,歌曲全部加载完毕

eventTester("seeking");    //寻找中

eventTester("seeked");    //寻找完毕

eventTester("timeupdate");    //播放时间改变

eventTester("ended");    //播放结束

eventTester("ratechange");    //播放速率改变

eventTester("durationchange");    //资源长度改变

eventTester("volumechange");    //音量改变

}

</script>

小伙伴们主要看下本文的思路即可,希望对大家能有所帮助

Javascript 相关文章推荐
用jquery修复在iframe下的页面锚点失效问题
Aug 22 Javascript
js兼容pc端浏览器并有多种弹出小提示的手机端浮层控件实例
Apr 29 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
Oct 08 Javascript
jQuery基于muipicker实现仿ios时间选择
Feb 22 Javascript
JavaScript实现分页效果
Mar 28 Javascript
javaScript字符串工具类StringUtils详解
Dec 08 Javascript
vue.js select下拉框绑定和取值方法
Mar 03 Javascript
vue页面切换到滚动页面显示顶部的实例
Mar 13 Javascript
深入解析vue 源码目录及构建过程分析
Apr 24 Javascript
vue单文件组件无法获取$refs的问题
Jun 24 Javascript
vue cli4.0项目引入typescript的方法
Jul 17 Javascript
解决vue addRoutes不生效问题
Aug 04 Javascript
jQuery圆形统计图开发实例
Jan 04 #Javascript
jQuery中:selected选择器用法实例
Jan 04 #Javascript
jQuery中:checked选择器用法实例
Jan 04 #Javascript
jQuery中:disabled选择器用法实例
Jan 04 #Javascript
AngularJS中取消对HTML片段转义的方法例子
Jan 04 #Javascript
jQuery中:enabled选择器用法实例
Jan 04 #Javascript
jQuery中:file选择器用法实例
Jan 04 #Javascript
You might like
mysql下创建字段并设置主键的php代码
2010/05/16 PHP
jQuery+php实现ajax文件即时上传的详解
2013/06/17 PHP
thinkphp特殊标签用法概述
2014/11/24 PHP
PHP实现的QQ空间g_tk加密算法
2015/07/09 PHP
10款实用的PHP开源工具
2015/10/23 PHP
实例详解PHP中html word 互转的方法
2016/01/28 PHP
PHP利用imagick生成组合缩略图
2016/02/19 PHP
100行PHP代码实现socks5代理服务器
2016/04/28 PHP
Save a File Using a File Save Dialog Box
2007/06/18 Javascript
javascript Keycode对照表
2009/10/24 Javascript
使用jquery读取html5 localstorage的值的方法
2013/01/04 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件体系结构
2015/11/19 Javascript
Backbone.js框架中Model与Collection的使用实例
2016/05/07 Javascript
原生JS实现在线问卷调查投票特效
2017/01/03 Javascript
Vue自定义指令详解
2017/07/28 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
webpack+vue+express(hot)热启动调试简单配置方法
2018/09/19 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
2018/11/18 Javascript
Vue监听滚动实现锚点定位(双向)示例
2019/11/13 Javascript
EXTJS7实现点击拖拉选择文本
2020/12/17 Javascript
使用Python通过win32 COM实现Word文档的写入与保存方法
2018/05/08 Python
python使用RNN实现文本分类
2018/05/24 Python
使用Python更换外网IP的方法
2018/07/09 Python
Django uwsgi Nginx 的生产环境部署详解
2019/02/02 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
挪威太阳镜和眼镜网上商城:SmartBuyGlasses挪威
2016/08/20 全球购物
西门豹教学反思
2014/02/04 职场文书
班级安全教育实施方案
2014/02/23 职场文书
内勤主管岗位职责
2014/04/03 职场文书
个人委托书格式
2014/04/04 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
党员群众路线对照检查材料思想汇报
2014/09/17 职场文书
党员批评与自我批评发言材料
2014/10/14 职场文书
教师创先争优承诺书
2015/04/27 职场文书
Nginx反向代理多个服务器的实现方法
2021/03/31 Servers
Python机器学习实战之k-近邻算法的实现
2021/11/27 Python