web音乐播放器
今天闲暇时间,花了2小时,写了个简单音乐播放器。欢迎大家来吐糟
先看下界面截图

大体实现:播放,停止,上一曲,下一曲,循环播放功能。
知识点:1.html 中audio 2.css 位置fixed
其中audio用到的方法:1.play 2.pause ,属性:1.src 2.loop
对于audio不熟悉的移步到http://www.w3school.com.cn/jsref/dom_obj_audio.asp
其中数据部分是在网上找了的保存在listrings.js中
下边关键时刻代码来了
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title>audio测试</title>
<meta name="viewport" content="width=device-width" />
<style>
* {
margin: 0;
padding: 0;
} body {
margin-bottom: 50px;
} .fix {
position: fixed;
bottom: 0;
left: 0;
z-index: 99;
background-color: rgba(0, 0, 0, .5);
right: 0;
text-align: center;
font-size:0;
} audio {
display: block;
width: 100%;
}
button{
padding: 3px 2px;
margin:4px 1px;
}
.mp3_list {
padding: 0;
list-style: none;
}
.mp3_list .mp3_title {
padding: 14px 5px;
border-bottom: 1px solid #CCCCCC;
color: #FFFFFF;
background: #1EACEA;
text-align: center;
} .mp3_list li {
position: relative;
padding: 15px 50px 12px 12px;
background: #fff;
color: #4C4C4C;
overflow: hidden;
font-size: 14px;
text-overflow: ellipsis;
border-bottom: 1px solid #F5F5F5;
white-space: nowrap;
cursor: pointer;
} .mp3_list .over,
.mp3_list .active {
color: #00B7EE;
} .mp3_list li span {
position: absolute;
font-size: 12px;
right: 0;
}
</style>
</head> <body>
<div class="fix">
<audio controls autoplay="autoplay">
<source src="http://www.runoob.com/try/demo_source/horse.ogg"></source>
浏览器不支持播放器请更换谷歌或升级浏览器
</audio>
<button id="play">播放</button>
<button id="paused">暂停</button>
<button id="urls">音乐地址</button>
<button id="preurl">上一曲</button>
<button id="nexturl">下一曲</button>
<button id="loop">循环</button>
</div>
<ul class="mp3_list">
</ul>
<script src="listrings.js"></script>
<script type="text/javascript" src="jquery-2.1.0.js"></script>
<script>
$(function() {
var listindex = 0,
len = mp3s.length,
audio = $("audio")[0],
source=$("source")[0];
var initlist = function() {
var html = '<div class="mp3_title">音乐列表</div>'
for(i = 0; i < len; i++) {
html += '<li data-id="' + i + '">' + mp3s[i].title + '<span>' + mp3s[i].desp.split("|")[1] + '</span></li>'
}
$(".mp3_list").html(html)
};
var playaudio = function() {
audio.play();
};
//改变音频地址
var changeSrc = function(index) {
$(".mp3_list li").removeClass("active")
$(".mp3_list li").removeClass("over");
audio.src=mp3s[index].songUrl;
$("#paused").trigger("click")
$(".mp3_list li").eq(index).addClass("active")
playaudio()
};
//初始化音乐队列
initlist();
//默认播放第一首
changeSrc(listindex);
//监听结束事件
$("audio").on("ended", function() {
if(++listindex > len) {
listindex = 0;
}
changeSrc(listindex);
});
$(".mp3_list").on("mouseover", "li", function() {
$(this).addClass("over")
});
$(".mp3_list").on("mouseout", "li", function() {
$(this).removeClass("over")
});
$(".mp3_list").on("click", "li", function() {
listindex = $(this).attr("data-id");
changeSrc(listindex)
});
//播放
$("#play").click(playaudio);
$("#paused").click(function() {
audio.pause()
});
$("#loop").click(function() {
var val=audio.loop==true?"循环":"关闭"
$(this)[0].innerText=val
audio.loop = !audio.loop;
});
//当前音乐地址
$("#urls").click(function() {
alert(audio.currentSrc)
});
//上一曲
$("#preurl").click(function() {
if(--listindex < 0) {
listindex = 0;
return
} else {
changeSrc(listindex)
}
});
//下一曲
$("#nexturl").click(function() {
if(++listindex > len) {
listindex = len;
return
} else {
changeSrc(listindex)
}
}); })
</script>
</body> </html>
效果狠狠点击 https://huashuaipeng.github.io/music/audio.html
源码地址:https://github.com/huashuaipeng/music
如果发现不能播放的说明资源不存在了。
推荐一篇文章
HTML5 Audio/Video 标签,属性,方法,事件汇总 https://www.douban.com/note/158621500/
web音乐播放器的更多相关文章
- 基于vue的移动端web音乐播放器
声明 以下只是学习完慕课网huangyi老师实战视频课程的笔记内容,仅供个人参考学习使用.如果对Vue2.0实战高级-开发移动端音乐WebApp感兴趣的话,请移步这里:https://coding.i ...
- web音乐播放器总结
前言 项目暂时告一段落,胸中有股炽热之气望喷涌而出!忍不住吐槽,为什么程序员要加班啊,为什么产品下达deadline,就得把这生死剑架在程序员的脖子上.卧槽,听说程序员在国外是叫工程师的.最近看了很多 ...
- 网页播放音频、视频文件——基于web的html 5的音乐播放器(转载)
文章转载自:开源中国社区 [http://www.oschina.net] 想通过手机客户端(支持 Android.iPhone 和 Windows Phone)访问开源中国:请点这里 HTML5 是 ...
- HTML5的Audio标签打造WEB音频播放器
目前,WEB页面上没有标准的方式来播放音频文件,大多数的音频文件是使用插件来播放,而众多浏览器都使用了不同的插件.而HTML5的到来,给我们提供了一个标准的方式来播放WEB中的音频文件,用户不再为浏览 ...
- Dewplayer 音乐播放器
Dewplayer 是一款用于 Web 的轻量级 Flash 音乐播放器.提供有多种样式选择,支持播放列表,并可以通过 JavaScript 接口来控制播放器. 注意事项: 该播放器只支持 mp3 格 ...
- 【竞品分析】Android音乐播放器的竞品分析
迄今为止最长的一篇博客,各位看官笑纳~~ 本次分析基于Android平台,选取了几款我体验过的播放器进行比较分析.主要分为两类,一类是大而全的,功能全面,可满足用户管理歌曲.导入导出歌单等多方面需求, ...
- 4个小时实现一个HTML5音乐播放器
技术点:ES6+Webpack+HTML5 Audio+Sass 这里,我们将一步步的学到如何从零去实现一个H5音乐播放器. 首先来看一下最终的实现效果:Demo链接 接下来就步入正题: 要做一个音乐 ...
- swift3.0 简单直播和简单网络音乐播放器
本项目采用swift3.0所写,适配iOS9.0+,所有界面均采用代码布局. 第一个tab写的是简单直播,传统MVC模式,第二个tab写的是简单网络音乐播放器.传说MVVM模式(至于血统是否纯正我就不 ...
- HTML5项目笔记4:使用Audio API设计绚丽的HTML5音乐播放器
HTML5 有两个很炫的元素,就是Audio和 Video,可以用他们在页面上创建音频播放器和视频播放器,制作一些效果很不错的应用. 无论是视屏还是音频,都是一个容器文件,包含了一些音频轨道,视频轨道 ...
随机推荐
- Oracle数据库中文乱码问题解决
1.查看服务器端编码select userenv('language') from dual;我实际查到的结果为:AMERICAN_AMERICA.ZHS16GBK 2.执行语句 select * f ...
- idea激活教程,最新!!!
1.下载破解补丁(关键). 破解补丁:JetbrainsIdesCrack-4.2-release.jar百度云地址:https://pan.baidu.com/s/18ovphd7sm7oYXQb4 ...
- vs code的简单插件
Auto Close Tag VSCode Color Info Mithril Emmet support for VS Code Open HTML in Default Browser open ...
- Unity Document
{ https://docs.unity3d.com/ScriptReference/Events.UnityEventTools.html }
- Jenkins应用
转自 https://www.cnblogs.com/syw20170419/category/1239520.html Jenkins+Git+Python 进行持续集成接口测试 https://w ...
- Vue学习笔记【13】——键盘修饰符以及自定义键盘修饰符
1.x版本中自定义键盘修饰符[了解] Vue.directive('on').keyCodes.f2 = 113; 2.x版本中自定义键盘修饰符 通过Vue.config.keyCodes.名称 = ...
- Read Uncommitted
Read Uncommitted是隔离级别最低的一种事务级别.在这种隔离级别下,一个事务会读到另一个事务更新后但未提交的数据,如果另一个事务回滚,那么当前事务读到的数据就是脏数据,这就是脏读(Dirt ...
- python之-sqlite3
在这些 URL 中,hostname 表示 MySQL 服务所在的主机,可以是本地主机(localhost),也可以是远程服务器.数据库服务器上可以托管多个数据库,因此 database 表示要使用的 ...
- git clone后切换分支,和远端的不一样。
原因 git clone后再master分支,切换后到了别的分支,分支里面的文件目录是不一样的,导致出现错误. 解决 删除原来的全部文件 git pull 可是git pull报错, git匹配的文件 ...
- Mysql 命令行下建立存储过程
建立存储过程的sql如下: CREATE PROCEDURE proc_variable () BEGIN DECLARE dec_var_ VARCHAR(100); DECLARE rep_nu ...