JavaScript实现自定义媒体播放器方法介绍


Posted in Javascript onJanuary 03, 2017

使用<audio>和<video>元素的play()和pause()方法,可以手工控制媒体文件的播放。组合使用属性、事件和这两个方法,很容易创建一个自定义的媒体播放器,如下面的例子所示。

<div class="mediaplayer">
  <div class="video">
    <video id="player" src="movie.mov" poster="mymovie.jpg"
    width="300" height="200">
    Video player not available.
    </video>
  </div>
  <div class="controls">
    <input type="button" value="Play" id="video-btn">
    <span id="curtime">0</span>/<span id="duration">0</span>
  </div>
</div>

以上基本的HTML 再加上一些JavaScript 就可以变成一个简单的视频播放器。以下就是JavaScript代码。

window.onload=function(){
  var player = document.getElementById("player"),
  oBtn = document.getElementById("video-btn"),
  curtime = document.getElementById("curtime"),
  duration = document.getElementById("duration");
  //更新播放时间
  duration.innerHTML = player.duration;
  oBtn.onclick = function(){
    if (player.paused){
      player.play();
      oBtn.value = "Pause";
    } 
    else {
      player.pause();
      oBtn.value = "Play";
    }
  }
  //定时更新当前时间
  setInterval(function(){
    curtime.innerHTML = player.currentTime;
  }, 250);
}

以上JavaScript 代码给按钮添加了一个事件处理程序,单击它能让视频在暂停时播放,在播放时暂停。通过<video>元素的load 事件处理程序,设置了加载完视频后显示播放时间。最后,设置了一个计时器,以更新当前显示的时间。你可以进一步扩展这个视频播放器,监听更多事件,利用更多属性。而同样的代码也可以用于<audio>元素,以创建自定义的音频播放器。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jQuery自定义事件的简单实现代码
Jan 27 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
Oct 29 Javascript
JavaScript返回上一页的三种方法及区别介绍
Jul 04 Javascript
基于Jquery制作图片文字排版预览效果附源码下载
Nov 18 Javascript
写给小白的JavaScript引擎指南
Dec 04 Javascript
基于Vue.js的表格分页组件
May 22 Javascript
详解如何在Angular中快速定位DOM元素
May 17 Javascript
EasyUI Datebox 日期验证之开始日期小于结束时间
May 19 Javascript
通过js动态创建标签,并设置属性方法
Feb 24 Javascript
详解基于Vue-cli搭建的项目如何和后台交互
Jun 29 Javascript
ES6基础之字符串和函数的拓展详解
Aug 22 Javascript
vue 路由缓存 路由嵌套 路由守卫 监听物理返回操作
Aug 06 Javascript
JS求解三元一次方程组值的方法
Jan 03 #Javascript
Vue.js系列之项目结构说明(2)
Jan 03 #Javascript
Vue.js系列之项目搭建(1)
Jan 03 #Javascript
jquery实现下拉框多选方法介绍
Jan 03 #Javascript
jQuery实现可拖拽3D万花筒旋转特效
Jan 03 #Javascript
详解JavaScript常量定义
Jan 03 #Javascript
两种简单的跨域方法(jsonp、php)
Jan 02 #Javascript
You might like
PHP 图像尺寸调整代码
2010/05/26 PHP
PHP中计算字符串相似度的函数代码
2012/12/29 PHP
解决CodeIgniter伪静态失效
2014/06/09 PHP
yii2中使用Active Record模式的方法
2016/01/09 PHP
微信支付开发发货通知实例
2016/07/12 PHP
Javascript 同时提交多个Web表单的方法
2009/02/19 Javascript
JavaScript中:表达式和语句的区别[译]
2012/09/17 Javascript
JS和JQUERY获取页面大小,滚动条位置,元素位置(示例代码)
2013/12/14 Javascript
JS实现根据当前文字选择返回被选中的文字
2014/05/21 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
JavaScript中匿名函数的用法及优缺点详解
2016/06/01 Javascript
JS中使用DOM来控制HTML元素
2016/07/31 Javascript
详解Node.js利用node-git-server快速搭建git服务器
2017/09/27 Javascript
微信小程序button组件使用详解
2018/01/31 Javascript
vue项目部署到Apache服务器中遇到的问题解决
2018/08/24 Javascript
Angular(5.2-&gt;6.1)升级小结
2018/12/27 Javascript
jQuery加PHP实现图片上传并提交的示例代码
2020/07/16 jQuery
python实现二分查找算法
2017/09/21 Python
python如何修改装饰器中参数
2018/03/20 Python
python实现按长宽比缩放图片
2018/06/07 Python
Python中函数参数调用方式分析
2018/08/09 Python
在交互式环境中执行Python程序过程详解
2019/07/12 Python
pytorch索引查找 index_select的例子
2019/08/18 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
详解canvas在圆弧周围绘制文本的两种写法
2018/05/22 HTML / CSS
购买大码女装:Lane Bryant
2016/09/07 全球购物
数据库连接池的工作原理
2012/09/26 面试题
2014三八妇女节活动总结
2014/03/01 职场文书
食品销售计划书
2014/04/26 职场文书
竞争上岗演讲稿范文
2014/05/12 职场文书
争先创优公开承诺书
2014/08/30 职场文书
开业庆典致辞
2015/08/01 职场文书
2015年教师党员个人总结
2015/11/24 职场文书
班主任寄语2016
2015/12/04 职场文书
《活见鬼》教学反思
2016/02/24 职场文书
解决Goland 同一个package中函数互相调用的问题
2021/05/06 Golang