JS实现控制HTML5背景音乐播放暂停

摘要:
首先,在网页中嵌入背景音乐。html5代码是:˂audioid=”bgMusic“src=”http://cctv3.qiniudn.com/zu

首先在网页中嵌入背景音乐,html5代码为:

<script src="http://wuover.qiniudn.com/jquery.js"></script>
<a class="mscBtn" id="audioBtn" title='最幸福的人' style="cursor:pointer;"></a>
<audio id="bgMusic" src="http://cctv3.qiniudn.com/zuixingfuderen.mp3" autoplay="autoplay"></audio>

css样式为:

.pause {background-position: 0 bottom;}
.mscBtn {height: 50px;
background: #fff url(http://cctv2.qiniudn.com/musicbtn.png) no-repeat;
display: block;}

通过audio的id即可控制音乐的播放(play())和暂停(pause()),同时通过改变class改变按钮的背景图片,js代码为(切记要引入jq库):

$(function(){
	$("#audioBtn").click(function(){
		if(music.paused){
			music.play();
			$("#audioBtn").removeClass("pause").addClass("play");
		}else{
			music.pause();
			$("#audioBtn").removeClass("play").addClass("pause");
		}
	});
});

改进了下,让网页背景音乐支持多首歌曲,播放完在随机播放下一首并且不会和上一首重复

$(function(){
var music = document.getElementById("bgMusic");
var musicArr=[//下面对应歌曲链接和歌名,自行添加用,隔开
   {url:'http://cctv3.qiniudn.com/tbhdqx.mp3',title:"唐伯虎点秋香"},                            
   {url:'http://cctv3.qiniudn.com/abzxh.mp3',title:"敖包再相会"},                        
   {url:'http://cctv3.qiniudn.com/lmzda.mp3',title:"辣妹子的爱"},                            
   {url:'http://cctv3.qiniudn.com/32.mp3',title:"32号嫁给你"},
   {url:'http://cctv3.qiniudn.com/tongxinjishou.mp3',title:"痛心疾首"},
   {url:'http://cctv3.qiniudn.com/rgangdst.mp3',title:"如果爱能感动上天"},
   {url:'http://cctv3.qiniudn.com/cz.mp3',title:"车站"},                            
   {url:'http://cctv3.qiniudn.com/hn.ogg',title:"很难"},                        
   {url:'http://cctv3.qiniudn.com/aqlmysdsc.mp3',title:"爱情里没有谁对谁错"},
   {url:'http://cctv3.qiniudn.com/dlaqdln.mp3',title:"丢了爱情丢了你"},                            
   {url:'http://cctv3.qiniudn.com/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();    
    });
});

免责声明:文章转载自《JS实现控制HTML5背景音乐播放暂停》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇归一化方法 Normalization Method16、mybatis学习——mybatis的动态sql之&amp;lt;if&amp;gt;、&amp;lt;where&amp;gt;和&amp;lt;trim&amp;gt;下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js中bind、call、apply函数的用法

最近一直在用 js 写游戏服务器,我也接触 js 时间不长,大学的时候用 js 做过一个 H3C 的 web的项目,然后在腾讯实习的时候用 js 写过一些奇怪的程序,自己也用 js 写过几个的网站。但真正大规模的使用 js 这还是第一次。我也是初生牛犊不怕虎,这次服务器居然抛弃 C++ 和 lua 的正统搭配,而尝试用 nodejs 来写游戏服务器,折腾的...

初探jquery之强大丰富的选择器

---恢复内容开始--- 1.基本选择器  常用的有id选择器:#id,   类选择器:.class , 元素选择器。 2.层次选择器 $(ancestor descendant):选取ancestor元素里的所有descendant后代元素。         示例:$("body div"): 改变<body>内所有div元素的背景色 <...

js获取url中指定参数的值(含带hash)

function getUrlVars() { var vars = {}; var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (m, key, value) {...

js css等静态文件版本控制,一处配置多处更新.net版【原创】

日常web开发中,我们修改了js、css等静态资源文件后,如果文件名不变的话,客户端浏览并不会及时获取最新的资源文件,这就很尴尬了 怎么办呢? 1.小白:让客户清除缓存?,No ,不靠谱 2.初级:把文件名改了?,可以,但我们产品样式一天更新8百次,怎么办?不方便 <link href="/css/old.css"rel="stylesheet"ty...

js小功能合集:计算指定时间距今多久、评论树核心代码、字符串替换和去除。

1.计算指定时间距今多久 var date1=new Date('2017/02/08 17:00'); //开始时间 var date2=new Date(); //当前时间 var date3=date2.getTime()-date1.getTime() //时间差的毫秒数 //计算出相差天数 var days=Math.floor(...

JS实现定时循环上翻

<html><body><DIValign="center"id="icefable2"><tablewidth='472'border='0'cellpadding='0'cellspacing='0'><tr><tdheight='113'>QQQQQQQQQQQQQQQQQQQ...