JS实现控制HTML5背景音乐播放暂停
作者:秋了秋 发表时间:2015年04月17日
实现控制网站背景音乐的播放暂停在html5中是非常容易和简单的,仅仅几行代码即可实现。
首先在网页中嵌入背景音乐,html5代码为:
<script src="http://resource.netblog.site/jquery.js"></script> <a class="mscBtn" id="audioBtn" title='最幸福的人' style="cursor:pointer;"></a> <audio id="bgMusic" src="http://media.netblog.site/zuixingfuderen.mp3" autoplay="autoplay"></audio>
通过audio的id即可控制音乐的播放(play())和暂停(pause()),同时通过改变class改变按钮的背景图片,js代码为(切记要引入jq库):
$(function(){
var music = document.getElementById("bgMusic");
$("#audioBtn").click(function(){
if(music.paused){music.play();
$("#audioBtn").removeClass("pause").addClass("play");
}else{music.pause();
$("#audioBtn").removeClass("play").addClass("pause");}});
});
css样式为:
.pause {background-position: 0 bottom;}
.mscBtn {height: 50px;
background: #fff url(//img.netblog.site/musicbtn.png) no-repeat;
display: block;}
demo效果就是本页面,当你打开了该页面之后一定有音乐播放,如果你按以下的按钮没反应,请点击这里刷新页面后再点击下面的图标。
应大伙的要求,改进了下,让网页背景音乐支持多首歌曲,播放完在随机播放下一首并且不会和上一首重复,并提供播放暂停按钮,本来这篇文章只是提供最简单的功能让大家自行扩展的,既然大家都提到了这个,我在评论里面也回了,在把最终的版本写在这篇文章后续上,主要就是js换成以下的:
$(function(){
var music = document.getElementById("bgMusic");
var musicArr=[//下面对应歌曲链接和歌名,自行添加用,隔开
{url:'http://media.netblog.site/tbhdqx.mp3',title:"唐伯虎点秋香"},
{url:'http://media.netblog.site/abzxh.mp3',title:"敖包再相会"},
{url:'http://media.netblog.site/lmzda.mp3',title:"辣妹子的爱"},
{url:'http://media.netblog.site/32.mp3',title:"32号嫁给你"},
{url:'http://media.netblog.site/tongxinjishou.mp3',title:"痛心疾首"},
{url:'http://media.netblog.site/rgangdst.mp3',title:"如果爱能感动上天"},
{url:'http://media.netblog.site/cz.mp3',title:"车站"},
{url:'http://media.netblog.site/hn.ogg',title:"很难"},
{url:'http://media.netblog.site/aqlmysdsc.mp3',title:"爱情里没有谁对谁错"},
{url:'http://media.netblog.site/dlaqdln.mp3',title:"丢了爱情丢了你"},
{url:'http://media.netblog.site/cty.mp3',title:"闯天涯"}
];
$("#audioBtn").click(function(){
if(music.paused){music.play();
$("#audioBtn").removeClass("pause").addClass("play");
}else{music.pause();
$("#audioBtn").removeClass("play").addClass("pause");}
});
function randomMusic(){
var isone=$("#bgMusic").attr('src');
var noone=musicArr[parseInt(Math.random()*musicArr.length)];
if (noone.url==isone){var noone=musicArr[parseInt(Math.random()*musicArr.length)];}
$("#bgMusic").attr('src',noone.url);
$("#audioBtn").attr('title',noone.title);
}
randomMusic();
$("#bgMusic").on('ended',function(){
randomMusic();
});
});
52
文章作者: “秋了秋”个人博客,本站鼓励原创。
转载请注明本文地址:http://netblog.cn/blog/327.html