我正在尝试计算html 5视频的测量时间 . 我用javascript听html5视频事件 loadstart
和 canplaythrough
使用:
media.addEventListener('loadstart'getStartTime(){
startTime = new Date().getTime();},
false)
类似于endTime,事件设置为 canplaythrough
来监听 . 但是我无法获得任何数据 .
有人可以指导我如何使用JavaScript测量视频加载时间 .
感谢您的回复,但解决方案是我相信使用jQuery . 但是,我想知道是否可以从javascript . 我附上了我的代码副本:
function loadVideo(){var timeNow = Date.now(),timeStartLoad,timeFinishLoad; myVideos = new Array(); myVideos [0] =“trailer.mp4”; myVideos [1] =“trailer.ogg”; myVideos [2] =“trailer.m4v”; var videoId = document.getElementById('idForVideo'); var video = document.createElement('video'); for(var i = 0; i
但是我对timestartLoad和timeFinishLoad都没有定义 . 我的html正文有onload方法链接到这个函数 .
3 回答
您的代码有一些(复制和粘贴)语法问题 .
试试:http://jsfiddle.net/noiv/98xZP/:
嘿,我明白了 . 原因似乎是由于浏览器的快速响应性,即使事件被捕获,它也会获取数据 . 歌剧提供的解决方案似乎有效 . 在内联脚本中包含事件侦听器,并为window对象创建addEventListener . 更多详情:http://dev.opera.com/articles/view/consistent-event-firing-with-html5-video/
虽然我无法发表评论,但我已经为@noiv上面的小提琴添加了一个分叉,因为小提琴有一些JS错误 . 谢谢@noiv让我朝着正确的方向前进 .
http://jsfiddle.net/truedat101/Gbfj2/7/
值得注意的是,whatwg试图在浏览器中围绕视频指标进行一些统一,因此浏览器会支持一些常见的属性,尽管看起来已经将这项工作分成了各个方面,Mozilla支持他们的自己的指标,支持他们的Chromium团队以及支持他们的Apple Safari .