我们采用 Bootstrap 网站的图标字体,作为播放器的按钮图标。

index.html的代码如下:

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title></title><!-- 引入字体图标的文件--><link rel="stylesheet" href="css/font-awesome.min.css"/><style>*{margin: 0;padding: 0;}/*多媒体标题*/figcaption{text-align: center;line-height: 150px;font-family: "Microsoft Yahei";font-size:24px;}/* 播放器*/.palyer{width: 720px;height: 360px;margin:10px auto;border: 1px solid #000;background: url(images/loading.gif) center no-repeat #000;background-size:auto 100%;position: relative;border-radius: 20px;}.palyer video{height:100%;display: block;margin:0 auto;/*display: none;*/}/* 控制条*/.controls{width: 700px;height:40px;background-color: rgba(255, 255, 0, 0.3);position: absolute;bottom:10px;left:10px;border-radius: 10px;}/*开关*/.switch{position: absolute;width: 20px;height: 20px;left:10px;top:10px;text-align: center;line-height: 20px;color:yellow;}/*进度条*/.progress{width: 432px;height: 10px;position: absolute;background-color: rgba(255,255,255,0.4);left:40px;top:15px;border-radius: 4px;overflow: hidden;}/* 当前进度*/.curr-progress{width: 50%;height: 10px;background-color: #fff;}/* 时间模块*/.time{width: 120px;height: 20px;text-align: center;line-height: 20px;color:#fff;position: absolute;left:510px;top:10px;font-size:12px;}/*全屏*/.extend{position: absolute;width: 20px;height: 20px;right:20px;top:10px;text-align: center;line-height: 20px;color:yellow;}</style>
</head>
<body><!-- 多媒体--><figure><!--  多媒体标题--><figcaption>视频案例</figcaption><div class="palyer"><video src="video/fun.mp4"></video><!-- 控制条--><div class="controls"><!-- 播放暂停--><a href="#" class="switch  icon-play"></a><div class="progress"><!-- 当前进度--><div class="curr-progress"></div></div><!-- 时间--><div class="time"><span class="curr-time">00:00:00</span>/<span class="total-time">00:00:00</span></div><!-- 全屏--><a href="#" class="extend  icon-resize-full"></a></div></div></figure><script>// 思路:/** 1、点击按钮 实现播放暂停并且切换图标* 2、算出视频的总时显示出出来* 3、当视频播放的时候,进度条同步,当前时间同步* 4、点击实现全屏*///        获取需要的标签var  video=document.querySelector('video');
//          播放按钮var  playBtn=document.querySelector('.switch');
//          当前进度条var  currProgress=document.querySelector('.curr-progress');
//          当前时间var  currTime=document.querySelector('.curr-time');
//          总时间var  totalTime=document.querySelector('.total-time');
//          全屏var extend=document.querySelector('.extend');var tTime=0;//         1、点击按钮 实现播放暂停并且切换图标playBtn.onclick=function(){
//               如果视频播放 就暂停,如果暂停 就播放if(video.paused){
//                   播放video.play();//切换图标this.classList.remove('icon-play');this.classList.add('icon-pause');}else{
//                   暂停video.pause();
//                   切换图标this.classList.remove('icon-pause');this.classList.add('icon-play');}}//        2、算出视频的总时显示出出来
//        当时加载完成后的事件,视频能播放的时候video.oncanplay=function(){
//             获取视频总时长tTime=video.duration;console.log(tTime);//          将总秒数 转换成 时分秒的格式:00:00:00
//            小时var h=Math.floor(tTime/3600);
//            分钟var m=Math.floor(tTime%3600/60);
//            秒var s=Math.floor(tTime%60);//            console.log(h);
//            console.log(m);
//            console.log(s);//            把数据格式转成 00:00:00h=h>=10?h:"0"+h;m=m>=10?m:"0"+m;s=s>=10?s:"0"+s;console.log(h);console.log(m);console.log(s);
//            显示出来totalTime.innerHTML=h+":"+m+":"+s;}
//   * 3、当视频播放的时候,进度条同步,当前时间同步
//         当时当前时间更新的时候触发video.ontimeupdate=function(){
//            获取视频当前播放的时间
//           console.log(video.currentTime);
//            当前播放时间var cTime=video.currentTime;
//           把格式转成00:00:00var h=Math.floor(cTime/3600);
//            分钟var m=Math.floor(cTime%3600/60);
//            秒var s=Math.floor(cTime%60);//            把数据格式转成 00:00:00h=h>=10?h:"0"+h;m=m>=10?m:"0"+m;s=s>=10?s:"0"+s;//            显示出当前时间currTime.innerHTML=h+":"+m+":"+s;//            改变进度条的宽度: 当前时间/总时间var value=cTime/tTime;currProgress.style.width=value*100+"%";}//        全屏extend.onclick=function(){
//            全屏的h5代码video.webkitRequestFullScreen();}</script>
</body>
</html>

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

无语非说我质量有问题,凑个字数……

07-HTML5举例:简单的视频播放器相关推荐

  1. HTML实例——简单的视频播放器

    前两篇博文我们学习了HTML的表单事件与实现一个鼠标点击时,tab栏切换的实例 今天我们来实现一个简单的视频播放器 HTML--表单事件 HTML举例-鼠标点击时,tab栏切换 <!DOCTYP ...

  2. 一个简单的视频播放器

    本文介绍一个简单的视频播放器的实现,主要功能是读取U盘视频文件,通过UI显示进行播放,包括UI的一些控制逻辑,由于以demo的形式实现,因此UI设计效果比较一般,主要实现对应的功能,下面就简单介绍下整 ...

  3. MediaCodec、OpenGL、OpenSL/AudioTrack 实现一款简单的视频播放器

    概述 功能很简单,大致流程为: 1) MediaCodec 解码视频文件得到 YUV.PCM 数据 2) OpenGL 将 YUV 转为 RGB,并渲染到 Surface 上 3) OpenSL/Au ...

  4. 酷播云html5倍速功能视频播放器,Chrome扩展推荐:一个能16倍速播放的免费视频倍速播放器...

    Video Speed Controller 长时间观看看网课或者影视剧时,啰嗦的内容很容易令人疲劳. 因此许多人在观看视频时,常常习惯将播放速度提升至1.3~1.5倍来补偿视觉接收的差异. 虽然某些 ...

  5. 实现HTML5的video标签视频播放器

    HTML5的video标签   video标签提供了直接在网页上播放视频的方式,摆脱了flash插件.让实现变得更简单,只是video标签兼容性还有些问题:不兼容ie8及以下版本的浏览器. video ...

  6. 用Android做的一个简单的视频播放器

    視頻播放器项目功能需求 1 项目概述 1.1 项目描述 視頻播放器(以及視頻管理系統)是一款由java(Swing,安卓和数据库)做的手机视频播放器,可以看手机本地的各种视频,通过按钮进入手机视频管理 ...

  7. Html5酷播云视频播放器同层播放(代码实例)

    在Android手机上使用H5播放视频时,大多数的国内浏览器厂商都会在视频播放时劫持<video>标签,使用浏览器自带的播放器播放视频,而且播放器会处于最高层级,视频上面无法显示其它htm ...

  8. 酷播云html5倍速功能视频播放器,可以倍速播放视频的浏览器插件

    可以倍速播放视频的浏览器插件 Video Speed Controller 是一款倍速播放视频的浏览器插件! 现在网站上播放的视频,基本上都可以实现倍速播放,但偶尔也有些网站上的视频:没有倍速播放功能 ...

  9. HTML5实现自定义音视频播放器

    相关资源:点击跳转到资源下载 https://download.csdn.net/download/weixin_45632016/20363517 目的: 通过综合性实验的设计,使学生综合训练自己的 ...

  10. QT简单的视频播放器

    1.功能 选择路径下的固定视频格式文件播放,对应的音频和视频同步播放 2.新建一个不含UI界面的QT工程 特别注意:QT中的路径名不能含中文 设置一个不含UI界面的工程 取消构建目录 因为要引入视频播 ...

最新文章

  1. 知乎上看到一个关注软件测试的问答,太直接了
  2. 阿里某新员工感慨:入职阿里三个月生活一团糟,想辞职休息
  3. 机器学习:分类,回归,聚类
  4. ASP.NET2.0 ObjectDataSource的使用详解(1)
  5. 北理工在线作业计算机的主要特点是( ),北理工18秋《计算机组成原理》在线作业【答案】...
  6. Linux(三):VMware Tools安装
  7. axios下载图片 node_vue+node.js手把手教你搭建一个直播平台(二)
  8. DevExpress GridView 自定义实现底部汇总
  9. Cookie自动登录认证
  10. 在坦桑尼亚如何打国际长途,打给你中国的朋友?
  11. CQHTTP 以HTTP形式制作你的QQ机器人
  12. Flume编写拦截器
  13. c语言 at指令gprs,gprs AT 指令
  14. QAX答题页面js逆向分析(二)
  15. 【数学】如何求e的值
  16. 单片机重启或拔电依旧不能下载程序
  17. 从听不见声音到听见声音,零散记录自己的经历
  18. android录制avi视频时aac音频的正确配置方法
  19. stm32写字机器人资料包含程序,原理图
  20. OSPF特殊区域Total Stub配置-ZTE中兴路由器

热门文章

  1. 53端口渗透之dns劫持与欺骗篇
  2. python成功爬取拉勾网——初识反爬(一个小白真实的爬取路程,内容有点小多)
  3. linux基础操作--参考狂神说
  4. 谈如何把科大建成一流大学
  5. 前端动态生成随机图形验证码
  6. 【EPICS】在Ubuntu下安装epics及Asyn、Streamdevice工具包
  7. 计算机学报在线阅读,基于聚类分析的进程拓扑映射优化-计算机学报.pdf
  8. 【Beetl笔记整理二】定义变量
  9. 年后要不要跳槽?看完这篇产业互联网趋势分析再决定吧!
  10. 分享一套PHP的cms系统,免授权可商用,零元CMS企业官网系统,采用laravel+admin架构的企业建站系统