这篇文章主要介绍了有关HTML5中背景音乐的自动播放功能的相关资料
1.音乐的自动播放属性
1 <audio controls="controls" autoplay="autoplay"> 2 <source src="song.ogg" type="audio/ogg" /> 3 <source src="song.mp3" type="audio/mpeg" /> 4 Your browser does not support the audio element. 5 </audio>
autoplay 属性规定一旦音频就绪马上开始播放
但是在实际运用中,经常会遇到不能自动播放的现象,主要是因为有些浏览器或者手机会阻止或不支持autoplay这个属性,在这里我介绍一下我采用的方法。
(1)首先:在html中代码如下
<audio id="music1" controls="controls" autoplay="autoplay" preload id="music1" hidden> <source src="music/bgmusic.mp3" /> </audio> <!--这里是音乐--> <img id="btn" class="active" src="img/music.png" alt="" /> <!--这里是一个可以控制背景音乐播放暂停的开关-->
(2)在js文件中采用如下代码
1 var audio = document.getElementById('music1'); 2 $("#btn").bind("touchstart", function bf() { 3 if(audio !== null) { 4 //检测播放是否已暂停.audio.paused 在播放器播放时返回false. 5 //alert(audio.paused); 6 if(audio.paused) { 7 audio.play(); //audio.play();// 这个就是播放 8 $("#btn").addClass("active") 9 } else { 10 audio.pause(); // 这个就是暂停 11 $("#btn").removeClass("active") 12 } 13 } 14 })
写到了这里大部分安卓机就基本可以实现自动播放了,但是苹果手机在这个时候还是不行的
2.这里我采用了一个在加载页中加入一个按钮,当加载完成的时候,点击按钮,引导用户完成背景音乐的自动播放,代码如下:
1 $("html").one('touchstart',function(){
2 audio.play();
3 })
到了这里就实现了背景音乐的自动播放,这个办法适用于有加载页,并且需要点击进入h5的项目......