31.JS实现控制HTML5背景音乐播放暂停
首先在网页中嵌入背景音乐,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>
通过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(http://cctv2.qiniudn.com/musicbtn.png) no-repeat;
- display: block;}
demo效果就是本页面,当你打开了该页面之后一定有音乐播放,如果你按以下的按钮没反应,请点击这里刷新页面后再点击下面的图标。
应大伙的要求,改进了下,让网页背景音乐支持多首歌曲,播放完在随机播放下一首并且不会和上一首重复,并提供播放暂停按钮,本来这篇文章只是提供最简单的功能让大家自行扩展的,既然大家都提到了这个,我在评论里面也回了,在把最终的版本写在这篇文章后续上,主要就是js换成以下的:
- $(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();
- });
- });
/////
加载完成之后再播放音乐
html:
<audio id="bgMusic" src="" loop="loop"></audio>
js:
//控制音乐播放
var musicbg = document.getElementById("bgMusic");
$("#music").click(function(){
if(musicbg.paused){
musicbg.play();
$("#music").removeClass("pause").addClass("play");
}else{
musicbg.pause();
$("#music").removeClass("play").addClass("pause");
}
});
//页面加载完成之后调用finish方法
this.finish=function () {
var audioUrl = "js/music.mp3";//音频路径
//调用方法
_this.loadAudio(audioUrl,function(){
//加载层消失,内容层显示
_this.loadingBox.hide();
$(".text-center").show();
//音乐
$('#bgMusic').attr("src",audioUrl);
var musicbg = document.getElementById("bgMusic");
musicbg.play();
});
}
31.JS实现控制HTML5背景音乐播放暂停的更多相关文章
- JS实现控制HTML5背景音乐播放暂停
首先在网页中嵌入背景音乐,html5代码为: <script src="http://wuover.qiniudn.com/jquery.js"></script ...
- Cocos2d-x中背景音乐播放暂停与继续
背景音乐播放暂停与继续似乎我们很少使用,事实上也正是如此,背景音乐播放暂停与继续实例代码如下: SimpleAudioEngine::getInstance()->pauseBackground ...
- js控制html5 audio的暂停、播放、停止
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name ...
- HTML5背景音乐的暂停与播放
HTML代码: <audio id="myaudio" loop="loop" preload="auto" autoplay ...
- JS控制flash的播放
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- js控制html5 【video】标签中视频的播放和停止
需求:页面中有2个普通按钮a,b.还有一个video标签,能成功播放出视频..我想要的效果是,点击a按钮,视频开始播放,点击b按钮,视频播放停止!!!<br><br>----- ...
- html5 audio的暂停与播放
在html5里,audio是新增的功能.它方便了用户. 大多数音频是通过插件(比如 Flash)来播放的.然而,并非所有浏览器都拥有同样的插件. HTML5 规定了一种通过 audio 元素来包含音频 ...
- 使用jQuery播放/暂停 HTML5视频
文章来自:http://blog.okbase.net/jquery2000/archive/4485.html 我尝试用jQuery控制HTML5视频,两个视频分别在两个tab中,我希望点中tab后 ...
- apk支持html video控制 ,是播放状态就暂停,暂停状态就播放
apk支持html video控制 <!DOCTYPE html> <html> <body> <div style="text-align:cen ...
随机推荐
- ubuntu下能ping通ssh不通的解决思路
1.首先看看是否能ping通,如果ping不通可能就要考虑网线.路由等问题了: 2.看防火墙是否关闭,sshd是否开启 3.ssh -v 服务器的ip号,根据提示寻找可能的问题: 我的问题在这一步之后 ...
- field, or, more generally, in a ring or even a semiring 数域、环、半环
小结: 1.数域.环.半环 :一般化.泛化 https://en.wikipedia.org/wiki/Matrix_multiplication In mathematics, matrix mul ...
- 结构体地址 字符串地址 数组地址 辨析 字符char是整型 内存地址
小结: 1.函数传参中,结构体不同数组,结构体是传值,指针和数组是传地址:2.随声明顺序,指针变量的内存地址从低到高,其他从高到低:3.char c[]字符数组,即数组的一种:char *c字符指针, ...
- Page7:能控性、能观性及其判据和对偶原理(2)[Linear System Theory]
内容包含连续时间时变系统的能控性和能观测性判据,离散时间线性系统的能控性和能观测性判据,以及对偶原理
- word 使用总结
1.标题: 开始->标题栏 2.插入目录: 引用---->更新目录 3.保持分页:页面布局->分隔符->分页符
- SQL instr()函数的格式
格式一:instr( string1, string2 ) / instr(源字符串, 目标字符串) 格式二:instr( string1, string2 [, start_positio ...
- linux strncpy()和strcat使用总结
strcat原型:char *strcat(char *dest,const char *src); 把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'.src和de ...
- JavaScript学习笔记--语言工具的了解
基础学习,快速入门资料:网站 https://www.liaoxuefeng.com ,http://www.runoob.com/js/js-tutorial.html 笔记: 编程工具:SubLi ...
- pl/sql中文乱码
增加系统变量变量名:NLS_LANG变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
- FastDFS的使用
1.FastDFS 1.1. 什么是FastDFS? FastDFS是用c语言编写的一款开源的分布式文件系统.FastDFS为互联网量身定制,充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用 ...