有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题


Posted in HTML / CSS onJuly 19, 2013

日期在做一个视频播放的页面,其中用到了HTML5的Video对象,这个是HTML5中新增的一个对象,支持多种不同格式的视频在线播放,功能比较强大,而且还扩展了许多事件,可以通过JavaScript脚本来对视频播放进行控制。参考下面两个链接:
http://msdn.microsoft.com/en-us/library/windows/apps/hh465962.aspx
http://www.w3school.com.cn/html5/tag_video.asp

Video对象可以通过ontimeupdate事件来报告当前的播放进度,同时通过该事件还可以根据视频播放的情况来控制页面上的其它元素,例如随着视频播放的进度来切换章节、显示额外信息等。下面是一个例子:

复制代码
代码如下:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<title></title>
</head>
<body>
<script type="text/javascript">
function timeUpdate() {
document.getElementById('time').innerHTML = video.currentTime;
}
function durationChange() {
document.getElementById('duration').innerHTML = video.duration;
}
function seekVideo() {
document.getElementById('video').currentTime = document.getElementById('seekText').value;
}
window.onload = function () {
var videoPlayer = document.getElementById("video");
videoPlayer.ontimeupdate = function () { timeUpdate(); };
};
</script>
<div>
<video id="video" controls="controls"
poster="./images/videoground1.png"
src="./videoSource/video1.mp4" width="450px" height="320px"
ondurationchange="durationChange()" />
</div>
<div>Time: <span id="time">0</span> of <span id="duration">0</span> seconds.</div>
<div>
<input type="text" id="seekText" />
<input type="button" id="seekBtn" value="Seek Video" onclick="seekVideo();" />
</div>
</body>
</html>

当然你也可以像在页面上使用其它元素一样,给Video对象动态添加属性或者挂事件,如:
复制代码
代码如下:

video.ontimeupdate = function () { getCurrentVideoPosition(); };

不过上面这行代码貌似在Chrome上无效,可以使用addEventListener来代替它:
复制代码
代码如下:

videoPlayer.addEventListener("timeupdate", function () { getCurrentVideoPosition(); }, false);

不知道是什么原因在Chrome上不能直接将ontimeupdate事件挂在Video元素上,而必须通过addEventListener方法来添加事件。不过addEventListener也兼容IE和Firefox浏览器,所以应该是通过的。
HTML / CSS 相关文章推荐
CSS3绘制超炫的上下起伏波动进度加载动画
Apr 21 HTML / CSS
详解CSS3新增的背景属性
Dec 25 HTML / CSS
CSS3实现水平居中、垂直居中、水平垂直居中的实例代码
Feb 27 HTML / CSS
Css3实现无缝滚动防抖
Sep 14 HTML / CSS
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
Nov 17 HTML / CSS
html5 浏览器支持 如何让所有的浏览器都支持HTML5标签样式
Dec 07 HTML / CSS
用HTML5 实现橡皮擦的涂抹效果的教程
May 11 HTML / CSS
HTML5实现视频弹幕功能
Aug 09 HTML / CSS
Html5调用企业微信的实现
Apr 16 HTML / CSS
详解CSS不定宽溢出文本适配滚动
May 24 HTML / CSS
纯CSS如何禁止用户复制网页的内容
Nov 01 HTML / CSS
Html5同时支持多端sdk的小技巧
Nov 17 HTML / CSS
HTML5 的新的表单元素(datalist/keygen/output)使用介绍
Jul 19 #HTML / CSS
HTML5注册表单的自动聚焦与占位文本示例代码
Jul 19 #HTML / CSS
HTML5标签与HTML4标签的区别示例介绍
Jul 18 #HTML / CSS
html5 音乐播放器 audio 标签使用概述
Jul 15 #HTML / CSS
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
Jul 15 #HTML / CSS
css 如何让背景图片拉伸填充避免重复显示
Jul 11 #HTML / CSS
HTML5 Canvas渐进填充与透明实现图像的Mask效果
Jul 11 #HTML / CSS
You might like
PHP统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
php修改NetBeans默认字体的大小
2013/07/02 PHP
PHP SPL使用方法和他的威力
2013/11/12 PHP
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
2015/11/15 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
2016/06/13 PHP
jquery实现页面图片等比例放大缩小功能
2014/02/12 Javascript
jqeury-easyui-layout问题解决方法
2014/03/24 Javascript
一道JS前端闭包面试题解析
2015/12/25 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
Three.js学习之Lamber材质和Phong材质
2016/08/04 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
Angular2入门教程之模块和组件详解
2017/05/28 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
2017/07/21 Javascript
微信小程序实现音乐播放器
2019/11/20 Javascript
Vue中key的作用示例代码详解
2020/06/10 Javascript
ssm+vue前后端分离框架整合实现(附源码)
2020/07/08 Javascript
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
Python实现数据库并行读取和写入实例
2017/06/09 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
Python二叉树的镜像转换实现方法示例
2019/03/06 Python
快速解决docker-py api版本不兼容的问题
2019/08/30 Python
pytorch 求网络模型参数实例
2019/12/30 Python
OpenCV Python实现拼图小游戏
2020/03/23 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
python 读txt文件,按‘,’分割每行数据操作
2020/07/05 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
完美解决Pycharm中matplotlib画图中文乱码问题
2021/01/11 Python
大学英语演讲稿范文
2014/04/24 职场文书
公司捐款倡议书
2014/05/14 职场文书
销售简历自我评价怎么写
2014/09/26 职场文书
教师群众路线剖析材料
2014/09/29 职场文书
公务员处分决定书
2015/06/25 职场文书
初中班主任心得体会
2016/01/07 职场文书
2016大学生形势与政策心得体会
2016/01/12 职场文书
致创业的您:这类人不适合餐饮创业
2019/08/19 职场文书
python数字图像处理实现图像的形变与缩放
2022/06/28 Python