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 相关文章推荐
CSS教程:CSS3圆角属性
Apr 02 HTML / CSS
今天学到的CSS最新技术(与图片背景相关)
Dec 24 HTML / CSS
css3实现背景图片拉伸效果像桌面壁纸一样
Aug 19 HTML / CSS
详解CSS3的图层阴影和文字阴影效果使用
Jun 09 HTML / CSS
css3 column实现卡片瀑布流布局的示例代码
Jun 22 HTML / CSS
CSS3属性 line-clamp控制文本行数的使用
Mar 19 HTML / CSS
使用html2canvas实现浏览器截图的示例代码
Jan 26 HTML / CSS
html5+css3气泡组件的实现
Nov 21 HTML / CSS
html5各种页面切换效果和模态对话框用法总结
Dec 15 HTML / CSS
HTML5 Convas APIs方法详解
Apr 24 HTML / CSS
详解html5 shiv.js和respond.min.js
Jan 24 HTML / CSS
浅析canvas元素的html尺寸和css尺寸对元素视觉的影响
Jul 22 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
PHP彩蛋信息介绍和阻止泄漏的方法(隐藏功能)
2014/08/06 PHP
php实现cookie加密的方法
2015/03/10 PHP
PHP加密解密字符串汇总
2015/04/26 PHP
PHP实现添加购物车功能
2017/03/06 PHP
laravel 中如何使用ajax和vue总结
2017/08/16 PHP
PHP简单实现防止SQL注入的方法
2018/03/13 PHP
判断多个元素(RADIO,CHECKBOX等)是否被选择的原理说明
2009/02/18 Javascript
5款Javascript颜色选择器
2009/10/25 Javascript
js截取字符串的两种方法及区别详解
2013/11/05 Javascript
jquery实现用户信息修改验证输入方法汇总
2015/07/18 Javascript
js实现ctrl+v粘贴上传图片(兼容chrome、firefox、ie11)
2016/03/09 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
layui之select的option叠加问题的解决方法
2018/03/08 Javascript
JavaScript 点击触发复制功能实例详解
2018/11/02 Javascript
实例介绍JavaScript中多种组合继承
2019/01/20 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
2019/09/10 Javascript
JS求解两数之和算法详解
2020/04/28 Javascript
原生js实现放大镜组件
2021/01/22 Javascript
Python matplotlib 画图窗口显示到gui或者控制台的实例
2018/05/24 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
python转化excel数字日期为标准日期操作
2020/07/14 Python
详解python中的三种命令行模块(sys.argv,argparse,click)
2020/12/15 Python
python re.match()用法相关示例
2021/01/27 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
2021/01/29 Python
利用css3如何设置没有上下边的列表间隔线
2017/07/03 HTML / CSS
Fossil美国官网:Fossil手表、手袋、珠宝及配件
2017/02/01 全球购物
俄语专业毕业生推荐信
2013/10/28 职场文书
校园门卫岗位职责
2013/12/09 职场文书
会计专业大学生求职信范文
2014/01/28 职场文书
班主任工作经验材料
2014/02/02 职场文书
小学中秋节活动方案
2014/02/06 职场文书
英文自荐信范文
2015/03/25 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
2015年学校教育教学工作总结
2015/04/22 职场文书
文明旅游倡议书
2015/04/28 职场文书
2016领导干部廉洁从政心得体会
2016/01/19 职场文书