html5实现完美兼容各大浏览器的播放器


Posted in HTML / CSS onDecember 26, 2014

歌曲播放我们会发现他的兼容性不是很好,譬如IE上能播放的flash播放器,再firfox或者chrome上就不是很好的应用了,因为有插件的阻碍!HTML5的出现让这一切成为了可能,但是播放器虽然播放了,我们还要关注一下用户的体验度,所以,我们就写了一个HTML兼容的播放器!向下兼容IE6-9、chrome、firfox、opera等主流播放器,应该是全兼容!实现原理代码给大家奉上!

复制代码
代码如下:

<!doctype html>
<html>
<head>
<meta charset=utf-8>
<title>歌词同步播放器-powered by widuu xiaowei</title>
<meta http-equiv="Cache-Control" content="no-cache">
<meta name="viewport" content="width=device-width; initial-scale=1.0; minimum-scale=1.0; maximum-scale=1.4">
<meta name="MobileOptimized" content="240">
<link href="/mp3/css/blue.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="/mp3/js/jquery.js"></script>
<script type="text/javascript" src="/mp3/js/jquery.jplayer.js"></script>
<script type="text/javascript" src="/mp3/js/lrc.js"></script>
<style type="text/css">
* { margin:0; padding:0; }
ul, ol, dl { list-style:none; }
.content li.hover{ color:red; }
.content{ width:402px; height:200px; background:#ccc; overflow:hidden; padding:10px;}
</style>
<script>
//<![CDATA[
$(document).ready(function(){
$("#jquery_jplayer_1").jPlayer({
ready: function (event) {
$(this).jPlayer("setMedia", {
mp3:"yangcong.mp3" //mp3的播放地址
}).jPlayer("play");
},
timeupdate: function(event) {
if(event.jPlayer.status.currentTime==0){
time = "";
}else {
time = event.jPlayer.status.currentTime;
}

},
play: function(event) {
//点击开始方法调用lrc。start歌词方法 返回时间time

if(event.jPlayer.status.currentTime==0){
$("#jquery_jplayer_1").jPlayer("pause",1);
}

if($('#lrc_content').val()!==""){
$.lrc.start($('#lrc_content').val(), function() {
return time;
});
}else{
$(".content").html("没有字幕");
}
},
repeat: function(event) {
if(event.jPlayer.options.loop) {
$(this).unbind(".jPlayerRepeat").bind($.jPlayer.event.ended + ".jPlayer.jPlayerRepeat", function() {
$(this).jPlayer("play");
});
} else {
$(this).unbind(".jPlayerRepeat");
}
},
swfPath: "/js", //存放jplayer.swf的决定路径
solution:"html, flash", //支持的页面
supplied: "mp3", //支持的音频的格式
wmode: "window"

});
$("#lrc_content").hide();
});
//]]>
</script>
</head>
<body>
<textarea id="lrc_content" name="textfield" cols="70" rows="10">
[ar:测试用 ]
[00:03.00]洋葱
[00:06.00]演唱:平安
[00:09.00]
[00:11.38]如果你眼神能够为我片刻的降临
[00:21.23]如果你能听到心碎的声音
[00:28.88]盘底的洋葱像我永远是配角戏
[00:35.74]偷偷的看着你偷偷的隐藏着自己
[00:43.48]
[00:44.90]如果你愿意一层一层
[00:48.46]一层的剥开我的心
[00:52.66]你会发现你会讶异
[00:56.40]你是我最压抑最深处的秘密
[01:00.26]如果你愿意一层一层
[01:03.69]一层的剥开我的心
[01:07.76]你会鼻酸你会流泪
[01:11.60]只要你能听到我看到我的全心全意
[01:18.30]
[01:19.11]如果你愿意一层一层
[01:22.57]一层的剥开我的心
[01:26.66]你会发现你会讶异
[01:30.41]你是我最压抑最深处的秘密
[01:34.48]如果你愿意一层一层
[01:37.58]一层的剥开我的心
[01:41.51]你会鼻酸你会流泪
[01:45.15]只要你能听到我看到我的全心全意
[01:53.55]
[01:55.65]你会鼻酸你会流泪
[01:59.84]只要你能听到我看到我的全心全意
[02:12.57]
</textarea></p> <p><p>
<div id="jquery_jplayer_1" class="jp-jplayer"></div>
<div id="jp_container_1" class="jp-audio">
<div class="jp-type-single">
<div class="jp-gui jp-interface">
<ul class="jp-controls">
<li><a href="javascript:;" class="jp-play" tabindex="1">play</a></li>
<li><a href="javascript:;" class="jp-pause" tabindex="1">pause</a></li>
<li><a href="javascript:;" class="jp-stop" tabindex="1">stop</a></li>
<li><a href="javascript:;" class="jp-mute" tabindex="1" title="mute">mute</a></li>
<li><a href="javascript:;" class="jp-unmute" tabindex="1" title="unmute">unmute</a></li>
<li><a href="javascript:;" class="jp-volume-max" tabindex="1" title="max volume">max volume</a></li>
</ul>
<div class="jp-progress">
<div class="jp-seek-bar">
<div class="jp-play-bar"></div>
</div>
</div>
<div class="jp-volume-bar">
<div class="jp-volume-bar-value"></div>
</div>
<div class="jp-time-holder">
<div class="jp-current-time"></div>
<div class="jp-duration"></div>
<ul class="jp-toggles">
<li><a href="javascript:;" class="jp-repeat" tabindex="1" title="repeat">repeat</a></li>
<li><a href="javascript:;" class="jp-repeat-off" tabindex="1" title="repeat off">repeat off</a></li>
</ul>
</div>
</div>
<div class="jp-title">
<ul>
<li>mp3player powered by xiaowei</li>
</ul>
</div>
<div class="jp-no-solution">
<span>Update Required</span>
To play the media you will need to either update your browser to a recent version or update your <a href="<a href="http://get.adobe.com/flashplayer/">http://get.adobe.com/flashplayer/</a>" target="_blank">Flash plugin</a>.
</div>
</div>
</div>
<div class="content"><ul id="lrc_list">
点击开始播放……
</ul></div>
</body>
</html>

HTML / CSS 相关文章推荐
网页布局中CSS样式无效的十个重要原因详解
Aug 10 HTML / CSS
css3 自定义字体font-face使用介绍
May 14 HTML / CSS
css3 实现圆形旋转倒计时
Feb 24 HTML / CSS
html5设计原理(推荐收藏)
May 17 HTML / CSS
让IE下支持Html5的placeholder属性的插件
Sep 02 HTML / CSS
从零实现一个自定义html5播放器的示例代码
Aug 01 HTML / CSS
如何用canvas实现在线签名的示例代码
Jul 10 HTML / CSS
h5网页水印SDK的实现代码示例
Feb 19 HTML / CSS
HTML5表单验证特性(知识点小结)
Mar 10 HTML / CSS
html+css实现赛博朋克风格按钮
May 26 HTML / CSS
CSS 左边固定宽右边自适应的6种方法
May 15 HTML / CSS
浅谈css清除浮动(clearfix和clear)的用法
May 21 HTML / CSS
html5中 media(播放器)的api使用指南
Dec 26 #HTML / CSS
浅谈html5 响应式布局
Dec 24 #HTML / CSS
HTML5进度条特效
Dec 18 #HTML / CSS
html5+svg学习指南之SVG基础知识
Dec 17 #HTML / CSS
canvas需要在标签里直接定义宽高
Dec 17 #HTML / CSS
使用canvas绘制贝塞尔曲线
Dec 17 #HTML / CSS
使用canvas绘制超炫时钟
Dec 17 #HTML / CSS
You might like
修改ThinkPHP缓存为Memcache的方法
2014/06/25 PHP
php中JSON的使用与转换
2015/01/14 PHP
PHP+Ajax无刷新带进度条图片上传示例
2017/02/08 PHP
javascript setTimeout和setInterval 的区别
2009/12/08 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
jquery实现的一个简单进度条效果实例
2014/05/12 Javascript
详述JavaScript实现继承的几种方式(推荐)
2016/03/22 Javascript
JS工作中的小贴士之”闭包“与事件委托的”阻止冒泡“
2016/06/16 Javascript
JavaScript 巧学巧用
2017/05/23 Javascript
详解JS数值Number类型
2018/02/07 Javascript
layui实现二维码弹窗、并下载到本地的方法
2019/09/25 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
vue使用swiper实现中间大两边小的轮播图效果
2019/11/24 Javascript
JS实现炫酷轮播图
2020/11/15 Javascript
微信小程序实现购物车功能
2020/11/18 Javascript
[44:40]KG vs LGD 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
[35:55]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.11
2020/12/13 DOTA
Python编码爬坑指南(必看)
2016/06/10 Python
python随机数分布random测试
2018/08/27 Python
python 模块导入问题汇总
2021/02/01 Python
基于PyInstaller各参数的含义说明
2021/03/04 Python
HTML5本地存储之IndexedDB
2017/06/16 HTML / CSS
意大利制造的西装、衬衫和针对男士量身定制的服装:Lanieri
2018/04/08 全球购物
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
Kipling澳洲官网:购买凯浦林包包
2020/12/17 全球购物
请用Java实现列出某个目录下的所有文件
2013/09/23 面试题
简历里的自我评价
2014/01/31 职场文书
人力资源总监工作说明
2014/03/03 职场文书
村长贪污检举信
2014/04/04 职场文书
励志演讲稿500字
2014/08/21 职场文书
导游词之岳阳楼
2019/09/25 职场文书
详解CocosCreator项目结构机制
2021/04/14 Javascript
Html5新增了哪些功能
2021/04/16 HTML / CSS
详解Oracle数据库中自带的所有表结构(sql代码)
2021/11/20 Oracle
画错魏国疆域啦!《派对咖孔明》动画因作画失误于官网致歉
2022/04/07 日漫
SQL语句多表联合查询的方法示例
2022/04/18 MySQL