jquery设置video的宽度_HTML5,CSS3,jQuery自制video播放器

fe8d603891ae6e4c8ccbfb8160bacbd1.png

94a6dc5feabd4193c6b752bf51a273a1.png

插件描述:HTML5,CSS3,jQuery自制video播放器

使用步骤

不用object或者embed标签插入就能完成video的播放,那要感谢html5和css3的强大功能了,详细了解:http://webdesign.tutsplus.com/tutorials/site-elements/skin-orman-clarks-video-interface-using-jplayer-and-css

现在我们就step by step的详细指导吧,大家千万不要嫌长哦,不敢兴趣的地方可以直接略过,主要是为了保持文章的完整性O(∩_∩)O:

step1:HTML5 标记

Step 2: 下载 jPlayer插件

插件地址: jplayer.org

然后在head里面引用,当然是基于Jquery的插件

Step 3: Player 标记

html如下:

Update Required

Here's a message which will appear if the video isn't supported. A Flash alternative can be used here if you fancy it.

Update Required Here’s a message which will appear if the video isn’t supported. A Flash alternative can be used here if you fancy it.

Step 4: Controls 标记

html如下:

play

pause

/

mute

unmute

full screen

restore screen

主要包含:播放,停止按钮

进度条

时间提醒

静音切换

卷栏

全屏切换

Step 5: 添加视频

jPlayer插件目前支持以下视频格式:

mp3

mp4 (AAC/H.264)

ogg (Vorbis/Theora)

webm (Vorbis/VP8)

wav

使用代码如下:

更多使用方法见:jplayer.org

Step 6: Video 基本样式

css代码如下:html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,and,address,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,input,textarea,select{background:transparent;border:0;font-size:100%;margin:0;outline:0;padding:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}del{text-decoration:line-through}hr{background:transparent;border:0;clear:both;color:transparent;height:1px;margin:0;padding:0}mark{background-color:#ffffb3;font-style:italic}input,select{vertical-align:middle}ins{background-color:red;color:white;text-decoration:none}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}a{text-decoration:none;}

body {

margin:0;

padding:0;

background:url("bg.jpg") repeat;

}

.jp-video {

font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;

position:relative;

-webkit-box-shadow:0px 0px 20px rgba(0,0,0,.3);

-moz-box-shadow:0px 0px 20px rgba(0,0,0,.3);

box-shadow:0px 0px 20px rgba(0,0,0,.3);

}

.jp-video-360p {

width:570px;

margin: 100px auto;

}

.jp-video-full {

width:480px;

height:270px;

position:static !important;

position:relative

}

.jp-video-full .jp-jplayer {

top: 0;

left: 0;

position: fixed !important; position: relative; /* Rules for IE6 (full-screen) */

overflow: hidden;

z-index:1000;

}

.jp-video-full .jp-gui {

position: fixed !important; position: static; /* Rules for IE6 (full-screen) */

top: 0;

left: 0;

width:100%;

height:100%;

z-index:1000;

}

.jp-video-full .jp-interface {

position: absolute !important; position: relative; /* Rules for IE6 (full-screen) */

bottom: 0;

left: 0;

z-index:1000;

}

Step 7:基本控制样式css样式如下:

.jp-interface {

position: relative;

width:100%;

height: 35px;

background-image: -webkit-linear-gradient(top, rgb(242, 242, 242), rgb(209, 209, 209));

background-image: -moz-linear-gradient(top, rgb(242, 242, 242), rgb(209, 209, 209));

background-image: -o-linear-gradient(top, rgb(242, 242, 242), rgb(209, 209, 209));

background-image: -ms-linear-gradient(top, rgb(242, 242, 242), rgb(209, 209, 209));

background-image: linear-gradient(top, rgb(242, 242, 242), rgb(209, 209, 209));

filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f2f2f2', EndColorStr='#d1d1d1');

-webkit-box-shadow:

inset 0px 1px 0px #f7f7f7,

inset 0px -1px 0px #e2e2e2;

-moz-box-shadow:

inset 0px 1px 0px #f7f7f7,

inset 0px -1px 0px #e2e2e2;

box-shadow:

inset 0px 1px 0px #f7f7f7,

inset 0px -1px 0px #e2e2e2;

}

div.jp-controls-holder {

clear: both;

width:570px;

margin: 0 auto;

position: relative;

overflow:hidden;

}

Step 8: 停止播放按钮

css样式如下:a.jp-play,

a.jp-pause {

width:40px;

height:35px;

float:left;

text-indent:-9999px;

outline:none;

}

a.jp-play {

background: url("sprite.png") 0 0 no-repeat;

}

a.jp-pause {

background: url("sprite.png") -40px 0 no-repeat;

display: none;

}

.separator {

background-image:url("separator.png");

background-repeat:no-repeat;

width: 2px;

height: 35px;

float:left;

margin-top: 7px;

margin-right: 10px;

}

Step 9: 进度条样式

css样式如下:.jp-progress {

background: #706d6d;

-webkit-border-radius:5px;

-moz-border-radius:5px;

border-radius:5px;

-webkit-box-shadow:

inset 0px 1px 4px rgba(0,0,0,.4),

0px 1px 0px rgba(255,255,255,.4);

-moz-box-shadow:

inset 0px 1px 4px rgba(0,0,0,.4),

0px 1px 0px rgba(255,255,255,.4);

box-shadow:

inset 0px 1px 4px rgba(0,0,0,.4),

0px 1px 0px rgba(255,255,255,.4);

width:280px;

height:10px;

float:left;

margin-top: 13px;

}

.jp-seek-bar {

width:0px;

height:100%;

cursor: pointer;

}

.jp-seeking-bg {

background:#575555;

-webkit-border-radius:5px;

-moz-border-radius:5px;

border-radius:5px;

}

.jp-play-bar {

background: url("play-bar.png") left repeat-x;

width:0px;

height:10px;

position:relative;

z-index: 9999;

-webkit-border-radius:5px;

-moz-border-radius:5px;

border-radius:5px;

}

.jp-play-bar span {

position:absolute;

top: -3px;

right: -12px;

background:url("handle.png") no-repeat center;

width: 16px;

height: 17px;

}

Step 10:当前时间 / 持续时间的css样式

css样式如下:.jp-current-time,

.jp-duration {

font-size:11px;

font-family:Arial;

color:#444444;

margin-top: 12px;

float:left;

}

.jp-current-time {

float: left;

display:inline;

}

.jp-duration {

float: left;

display:inline;

text-align: right;

}

.jp-video .jp-current-time {

margin-left:10px;

}

.jp-video .jp-duration {

margin-right:10px;

}

.time-sep {

float:left;

margin: 13px 3px 0 3px;

font-size:11px;

font-family:Arial;

color:#444444;

}

第 11 步: 卷按钮和栏.jp-video a.jp-mute,

.jp-video a.jp-unmute {

text-indent:-9999px;

float:left;

height: 35px;

outline:none;

}

.jp-mute {

float:left;

background: url(../images/sprite.png) -80px 0 no-repeat;

margin-top: 1px;

margin-left: -10px;

width: 35px;

}

a.jp-unmute {

background: url(../images/sprite.png) -115px 0 no-repeat;

margin-top: 1px;

margin-left: -13px;

display: none;

width: 38px;

}

.jp-volume-bar {

float:left;

margin-top: 13px;

margin-right: 10px;

overflow:hidden;

width:70px;

height:10px;

cursor: pointer;

background: #706d6d;

-webkit-border-radius:5px;

-moz-border-radius:5px;

border-radius:5px;

-webkit-box-shadow:

inset 0px 1px 4px rgba(0,0,0,.4),

0px 1px 0px rgba(255,255,255,.4);

-moz-box-shadow:

inset 0px 1px 4px rgba(0,0,0,.4),

0px 1px 0px rgba(255,255,255,.4);

box-shadow:

inset 0px 1px 4px rgba(0,0,0,.4),

0px 1px 0px rgba(255,255,255,.4);

}

.jp-volume-bar-value {

background: transparent;

width:0px;

height:10px;

position: relative;

}

.jp-volume-bar-value span {

position:absolute;

top: 0px;

right: 0px;

background:url(../images/volume.png) no-repeat center;

width: 11px;

height: 10px;

}

第 12 步: 全屏按钮

CSS样式如下:.jp-full-screen {

background: url(../images/sprite.png) -150px 0 no-repeat;

float:left;

width: 40px;

height: 35px;

text-indent:-9999px;

margin-left: -15px;

outline:none;

}

.jp-restore-screen {

background: url(../images/sprite.png) -150px 0 no-repeat;

float:left;

width: 40px;

height: 35px;

text-indent:-9999px;

margin-left: -15px;

outline:none;

}

到这里我们的 video player就完成了,是不是代码很多,看得头大,其实不用那么紧张,我们只需要看关键地方就行了,比如说,了解那个player是如何使用的,还有具体的界面也有对应的CSS注释,关键是这些代码可以单独提取出来复用,仅供给大家自制播放器的时候提供一个参考,感谢伟大的coder的默默无闻奉献

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值