html5 自定义播放器核心代码


Posted in HTML / CSS onDecember 20, 2013

网页html

复制代码
代码如下:

<body style="background-color:#8EEE5EE;">
<section id="skin">
<video id="myMovie" width="640" height="360">
<source src="videos/Introduction.mp4">
</video>
<nav>
<div id="buttons">
<button type="button" id="playButton">Play</button>
</div>
<div id="defaultBar">
<div id="progressBar"></div>
</div>
<div style="clear:both"></div>
</nav>
</section>
</body>

css样式
复制代码
代码如下:

body{
text-align:center;
}
header,section,footer,aside,nav,article,hgroup{
display:block;
}
#skin{
width:700px;
margin:10px auto;
padding:5px;
background:red;
border:4px solid black;
border-radius:20px;
}
nav{
margin:5px 0px;
}
#buttons{
float:left;
width:70px;
height:22px;
}
#defaultBar{
position:relative;
float:left;
width:600px;
height:14px;
padding:4px;
border:1px solid black;
background:yellow;
}
/*progressBar在defaultBar内部*/
#progressBar{
position:absolute;
width:0px; /*使用javascript控制变化*/
height:14px; /*和defaultBar高度相同*/
background:blue;
}

javascript代码
复制代码
代码如下:

function doFisrt()
{
barSize=600; //注意不要使用px单位,且不要用var,是全局变量
myMovie=document.getElementById('myMovie');
playButton=document.getElementById('playButton');
bar=document.getElementById('defaultBar');
progressBar=document.getElementById('progressBar');
playButton.addEventListener('click',playOrPause,false); //第三个参数总是false, Register the event handler for the bubbling phase.
bar.addEventListener('click',clickedBar,false);
}
//控制movie播放和停止
function playOrPause(){
if(!myMovie.paused && !myMovie.ended){
myMovie.pause();
playButton.innerHTML='Play';
window.clearInterval(updatedBar);
}else{
myMovie.play();
playButton.innerHTML='pause';
updatedBar=setInterval(update,500);
}
}
//控制进度条的动态显示
function update(){
if(!myMovie.ended){
var size=parseInt(myMovie.currentTime*barSize/myMovie.duration);
progressBar.style.width=size+'px';
}else{
progressBar.style.width='0px';
playButton.innerHTML='Play';
window.clearInterval(updatedBar);
}
}
//鼠标点击进度条控制方法
function clickedBar(e){
if(!myMovie.paused && !myMovie.ended){
var mouseX=e.pageX-bar.offsetLeft;
var newtime=mouseX*myMovie.duration/barSize; //new starting time
myMovie.currentTime=newtime;
progressBar.style.width=mouseX+'px';
window.clearInterval(updatedBar);
}
}
window.addEventListener('load',doFisrt,false);

好东西啊,摘了代码部分
HTML / CSS 相关文章推荐
CSS3 calc()会计算属性详解
Feb 27 HTML / CSS
CSS3 :nth-child()伪类选择器实现奇偶行显示不同样式
Nov 05 HTML / CSS
CSS3控制HTML元素动画效果
Feb 08 HTML / CSS
简单介绍CSS3中Media Query的使用
Jul 07 HTML / CSS
详解CSS3 rem(设置字体大小) 教程
Nov 21 HTML / CSS
HTML5表格_动力节点Java学院整理
Jul 11 HTML / CSS
HTML5安全介绍之内容安全策略(CSP)简介
Jul 10 HTML / CSS
在HTML5 Canvas中放入图片和保存为图片的方法
May 03 HTML / CSS
HTML5 Canvas基本线条绘制的实例教程
Mar 17 HTML / CSS
Html5之title吸顶功能
Jun 04 HTML / CSS
html5唤醒APP小记
Mar 27 HTML / CSS
HTML页面中使两个div并排显示的实现
May 15 HTML / CSS
谷歌浏览器小字体处理方案即12px以下字体
Dec 17 #HTML / CSS
利用html5的websocket实现websocket聊天室
Dec 12 #HTML / CSS
html5拍照功能实现代码(htm5上传文件)
Dec 11 #HTML / CSS
html5教程实现Photoshop渐变色效果
Dec 04 #HTML / CSS
html5教程调用绘图api画简单的圆形代码分享
Dec 04 #HTML / CSS
html5教程画矩形代码分享
Dec 04 #HTML / CSS
html5教程制作简单画板代码分享
Dec 04 #HTML / CSS
You might like
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
PHP使用memcache缓存技术提高响应速度的方法
2014/12/26 PHP
php5与php7的区别点总结
2019/10/11 PHP
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
用js 让图片在 div或dl里 居中,底部对齐
2008/01/21 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
js中各浏览器中鼠标按键值的差异
2011/04/07 Javascript
使用jquery清空、复位整个输入域
2015/04/02 Javascript
jquery插件validation实现验证身份证号等
2015/06/04 Javascript
JQuery中DOM事件合成用法实例分析
2015/06/13 Javascript
jQuery EasyUI框架中的Datagrid数据表格组件结构详解
2016/06/09 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
nodejs基于express实现文件上传的方法
2018/03/19 NodeJs
Vue.js 父子组件通信的十种方式
2018/10/30 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
2020/08/03 Javascript
小结Python用fork来创建子进程注意事项
2014/07/03 Python
Python多进程通信Queue、Pipe、Value、Array实例
2014/11/21 Python
基于Python Shell获取hostname和fqdn释疑
2016/01/25 Python
Python分治法定义与应用实例详解
2017/07/28 Python
python tensorflow基于cnn实现手写数字识别
2018/01/01 Python
python爬虫获取淘宝天猫商品详细参数
2020/06/23 Python
python判断设备是否联网的方法
2018/06/29 Python
python控制台实现tab补全和清屏的例子
2019/08/20 Python
python 写一个文件分发小程序
2020/12/05 Python
25个CSS3动画按钮和菜单教程分享
2012/10/03 HTML / CSS
荷兰男士时尚网上商店:Suitable
2017/12/25 全球购物
美国美食礼品篮网站:Gourmet Gift Baskets
2019/12/15 全球购物
Kappa英国官方在线商店:服装和运动器材
2020/11/22 全球购物
会计专业自荐信
2013/12/02 职场文书
幼儿园门卫制度
2014/01/29 职场文书
工程管理英文求职信
2014/03/18 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
导游词之沈阳清昭陵
2019/12/28 职场文书
使用Python的开发框架Brownie部署以太坊智能合约
2021/05/28 Python
Spring mvc是如何实现与数据库的前后端的连接操作的?
2021/06/30 Java/Android
python中pymysql包操作数据库方法
2022/04/19 Python