我們有時(shí)會在頁面上加上背景音樂,允許用戶自己開啟和關(guān)閉背景音樂,尤其基于手機(jī)html5制作的多媒體頁面,HTML5的audio音頻標(biāo)簽可以獲取音頻的播放狀態(tài),通過觸摸按鈕就可以關(guān)閉和開啟背景音樂。
效果圖如下所示:
HTML
建立一個HTML5頁面,放置<audio>標(biāo)簽,設(shè)置音頻文件源,設(shè)置循環(huán)播放。準(zhǔn)備兩張圖片,分別表示開啟和暫停背景音樂兩種狀態(tài),可以點(diǎn)擊。
XML/HTML Code
<audio id="music2" src="music.mp3" loop="loop">你的瀏覽器不支持audio標(biāo)簽。</audio>
<a href="javascript:playPause();"><img src="pause.gif" width="48" height="50" id="music_btn2" border="0"></a>
Javascript
我們在點(diǎn)擊開關(guān)圖片按鈕的時(shí)候調(diào)用了javascript腳本,playPause()函數(shù)。函數(shù)中判斷audio音頻播放狀態(tài),如果已經(jīng)停止(paused)則調(diào)用.play()繼續(xù)播放,如果是在播放狀態(tài),則立即暫停播放.pause(),兩種狀態(tài)切換時(shí)及時(shí)更新按鈕圖片,請看代碼:
JavaScript Code
function playPause() {
var music = document.getElementById('music2');
var music_btn = document.getElementById('music_btn2');
if (music.paused){
music.play();
music_btn.src = 'play.gif';
}
else{
music.pause();
music_btn.src = 'pause.gif';
}
}
如果使用jQuery代碼可以這樣寫:
JavaScript Code
<audio id="music" src="http://cctv3.qiniudn.com/zuixingfuderen.mp3" autoplay="autoplay" loop="loop">你的瀏覽器不支持audio標(biāo)簽。</audio>
<a id="audio_btn"><img src="play.gif" width="48" height="50" id="music_btn" border="0"></a>
<script>
$("#audio_btn").click(function(){
var music = document.getElementById("music");
if(music.paused){
music.play();
$("#music_btn").attr("src","play.gif");
}else{
music.pause();
$("#music_btn").attr("src","pause.gif");
}
});
</script>