歌曲播放我们会发现他的兼容性不是很好,譬如IE上能播放的flash播放器,再firfox或者chrome上就不是很好的应用了,因为有插件的阻碍!HTML5的出现让这一切成为了可能,但是播放器虽然播放了,我们还要关注一下用户的体验度,所以,我们就写了一个HTML兼容的播放器!向下兼容IE6-9、chrome、firfox、opera等主流播放器,应该是全兼容!实现原理代码给大家奉上!
005 |
<title>歌词同步播放器-powered by widuu xiaowei</title> |
006 |
<meta http-equiv="Cache-Control" content="no-cache"> |
007 |
<meta name="viewport" content="width=device-width; initial-scale=1.0; minimum-scale=1.0; maximum-scale=1.4"> |
008 |
<meta name="MobileOptimized" content="240"> |
009 |
<link href="/mp3/css/blue.css" rel="stylesheet" type="text/css" /> |
010 |
<script type="text/javascript" src="/mp3/js/jquery.js"></script> |
011 |
<script type="text/javascript" src="/mp3/js/jquery.jplayer.js"></script> |
012 |
<script type="text/javascript" src="/mp3/js/lrc.js"></script> |
013 |
<style type="text/css"> |
014 |
* { margin:0; padding:0; } |
015 |
ul, ol, dl { list-style:none; } |
016 |
.content li.hover{ color:red; } |
017 |
.content{ width:402px; height:200px; background:#ccc; overflow:hidden; padding:10px;} |
021 |
$(document).ready(function(){ |
022 |
$("#jquery_jplayer_1").jPlayer({ |
023 |
ready: function (event) { |
024 |
$(this).jPlayer("setMedia", { |
025 |
mp3:"yangcong.mp3" //mp3的播放地址 |
028 |
timeupdate: function(event) { |
029 |
if(event.jPlayer.status.currentTime==0){ |
032 |
time = event.jPlayer.status.currentTime; |
036 |
play: function(event) { |
037 |
//点击开始方法调用lrc。start歌词方法 返回时间time |
039 |
if(event.jPlayer.status.currentTime==0){ |
040 |
$("#jquery_jplayer_1").jPlayer("pause",1); |
043 |
if($('#lrc_content').val()!==""){ |
044 |
$.lrc.start($('#lrc_content').val(), function() { |
048 |
$(".content").html("没有字幕"); |
051 |
repeat: function(event) { |
052 |
if(event.jPlayer.options.loop) { |
053 |
$(this).unbind(".jPlayerRepeat").bind($.jPlayer.event.ended + ".jPlayer.jPlayerRepeat", function() { |
054 |
$(this).jPlayer("play"); |
057 |
$(this).unbind(".jPlayerRepeat"); |
060 |
swfPath: "/js", //存放jplayer.swf的决定路径 |
061 |
solution:"html, flash", //支持的页面 |
062 |
supplied: "mp3", //支持的音频的格式 |
066 |
$("#lrc_content").hide(); |
072 |
<textarea id="lrc_content" name="textfield" cols="70" rows="10"> |
077 |
[00:11.38]如果你眼神能够为我片刻的降临 |
078 |
[00:21.23]如果你能听到心碎的声音 |
079 |
[00:28.88]盘底的洋葱像我永远是配角戏 |
080 |
[00:35.74]偷偷的看着你偷偷的隐藏着自己 |
085 |
[00:56.40]你是我最压抑最深处的秘密 |
089 |
[01:11.60]只要你能听到我看到我的全心全意 |
094 |
[01:30.41]你是我最压抑最深处的秘密 |
098 |
[01:45.15]只要你能听到我看到我的全心全意 |
101 |
[01:59.84]只要你能听到我看到我的全心全意 |
108 |
<div id="jquery_jplayer_1" class="jp-jplayer"></div> |
110 |
<div id="jp_container_1" class="jp-audio"> |
111 |
<div class="jp-type-single"> |
112 |
<div class="jp-gui jp-interface"> |
113 |
<ul class="jp-controls"> |
114 |
<li><a href="javascript:;" class="jp-play" tabindex="1">play</a></li> |
115 |
<li><a href="javascript:;" class="jp-pause" tabindex="1">pause</a></li> |
116 |
<li><a href="javascript:;" class="jp-stop" tabindex="1">stop</a></li> |
117 |
<li><a href="javascript:;" class="jp-mute" tabindex="1" title="mute">mute</a></li> |
118 |
<li><a href="javascript:;" class="jp-unmute" tabindex="1" title="unmute">unmute</a></li> |
119 |
<li><a href="javascript:;" class="jp-volume-max" tabindex="1" title="max volume">max volume</a></li> |
121 |
<div class="jp-progress"> |
122 |
<div class="jp-seek-bar"> |
123 |
<div class="jp-play-bar"></div> |
126 |
<div class="jp-volume-bar"> |
127 |
<div class="jp-volume-bar-value"></div> |
129 |
<div class="jp-time-holder"> |
130 |
<div class="jp-current-time"></div> |
131 |
<div class="jp-duration"></div> |
133 |
<ul class="jp-toggles"> |
134 |
<li><a href="javascript:;" class="jp-repeat" tabindex="1" title="repeat">repeat</a></li> |
135 |
<li><a href="javascript:;" class="jp-repeat-off" tabindex="1" title="repeat off">repeat off</a></li> |
139 |
<div class="jp-title"> |
141 |
<li>mp3player powered by xiaowei</li> |
144 |
<div class="jp-no-solution"> |
145 |
<span>Update Required</span> |
146 |
To play the media you will need to either update your browser to a recent version or update your <a href="http://get.adobe.com/flashplayer/" target="_blank">Flash plugin</a>. |
150 |
<div class="content"><ul id="lrc_list"> |
剩下的就是我的组件了,大家可以下载一下!http://pan.baidu.com/share/link?shareid=225514&uk=3172762343这是下载地址哈!
如果您有什么不明白的,可以联系我,如果您还有什么需求也可以联系我,发现bug改进的地方也可以联系我谢谢!
- 论HTML5 Audio 标签歌词同步的实现
HTML5草案里面其实有原生的字幕标签(<track> Tag)的,但使用的是vtt格式的文件,非常规的字幕(.sub, .srt)或歌词文件(.lrc). 用法如下(代码来自W3Scho ...
- HTML5 audio标签自制音乐播放器
相关技能 HTML5+CSS3(实现页面布局和动态效果) Iconfont(使用矢量图标库添加播放器相关图标) LESS (动态CSS编写) jQuery(快速编写js脚本) gulp+webpack ...
- [Python]简易terminal歌词滚动播放器
整合了网易云的一些API,想写一个terminal版的音乐播放器,但是还没有想好写成什么样子. 暂时写了一个必须又的功能:带歌词滚动的播放器,用了pygame里的mixer来播放音乐. 准备有时间的时 ...
- html5+css3酷炫音频播放器代码
1. [代码][JavaScript]代码 (function($){ jQuery.fn.extend({ "initAudio" : fun ...
- HTML5音频(自定义mp3播放器源码)
audio对象 src兼容.ogg .wav .mp3 <audio controls src='data/imooc.wav'></audio> width autoplay ...
- C#winfrom播放器动态加载歌词
上周我们进行了结业项目答辩,是播放器项目.有一个关于播放器变唱歌边加载歌词的方法特别有意思,像酷狗那样子歌词和歌曲同步滚播的样子. 这里的工具是Visual Studio 2013,使用语言是C#和. ...
- 7款超具个性的HTML5播放器
这篇文章我们要分享一些很有个性的HTML5音乐播放器和视频播放器,它们都具有播放器的大部分功能,并以HTML5和JavaScript实现.这些HTML5播放器有着非常漂亮的外观,很多你都无需自己重新定 ...
- 基于jQuery虾米音乐播放器样式代码
分享一款基于jQuery虾米音乐播放器样式代码.这是一款基于jquery+html5实现的虾米音乐播放器源码下载.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div c ...
- Android VLC播放器二次开发3——音乐播放(歌曲列表+歌词同步滚动)
今天讲一下对VLC播放器音频播放功能进行二次开发,讲解如何改造音乐播放相关功能.最近一直在忙着优化视频解码部分代码,因为我的视频播放器需要在一台主频比较低的机器上跑(800M主频),所以视频解码能力受 ...
随机推荐
- 在redis中查询一个KEY的值
写入某个key: set MPM_YYC_XTJ_0 "abcde" [set key value]
- POJ 3264 Balanced Lineup 简单RMQ
题目:http://poj.org/problem?id=3264 给定一段区间,求其中最大值与最小值的差. #include <stdio.h> #include <algorit ...
- Duplicate Symbol链接错的原因总结和解决方法-b
duplicate symbol是一种常见的链接错误,不像编译错误那样可以直接定位到问题的所在.但是经过一段时间的总结,发现这种错误总是有一些规律可以找的.例如,我们有如下的最简单的两个类代码: // ...
- iPhone不同机型适配 6/6plus --备用
机型变化 坐标:表示屏幕物理尺寸大小,坐标变大了,表示机器屏幕尺寸变大了: 像素:表示屏幕图片的大小,跟坐标之间有个对应关系,比如1:1或1:2等: ppi:代表屏幕物理大小到图片大小的比例值,如果 ...
- COGS 577 蝗灾 [CDQ分治入门题]
题目链接 昨天mhr神犇,讲分治时的CDQ分治的入门题. 题意: 你又一个w*w正方形的田地. 初始时没有蝗虫. 给你两个操作: 1. 1 x y z: (x,y)这个位置多了z只蝗虫. 2. 2 x ...
- 【UVAlive 3989】 Ladies' Choice (稳定婚姻问题)
Ladies' Choice Teenagers from the local high school have asked you to help them with the organizatio ...
- 最新ps cs6序列号 永久免费可用
一. 序列号 除非是从官方购买,从其它任何途径得到的序列号(包括网上流传的注册机生成的)都是不能通过联网验证的,必须使用破解补丁,或是通过修改hosts文件的方式来激活.因此,除了正版,不存在所谓的“ ...
- Excel列表部分列表隐藏与取消隐藏
Excel列表部分列表隐藏与取消隐藏 2014-2-19 隐藏:选中需要隐藏的列(选中A.B.C....),右键单击所选部分,选择"隐藏"即可. 取消隐藏:从A选中至所见表格最后的 ...
- WCF - net.pipe vs. net.tcp vs. http Bindings
WCF - net.pipe vs. net.tcp vs. http Bindings 问题: I'm new to WCF and would like to know the differenc ...
- JSOI2008 火星人prefix
1014: [JSOI2008]火星人prefix Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2918 Solved: 866[Submit][ ...