我們有時會在頁面上加上背景音樂,允許用戶自己開啟和關閉背景音樂,尤其基於手機Html5制作的多媒體頁面,Html5的audio音頻標簽可以獲取音頻的播放狀態,通過觸摸按鈕就可以關閉和開啟背景音樂。
效果圖如下所示:
查看演示效果 源碼下載
Html
建立一個Html5頁面,放置<audio>標簽,設置音頻文件源,設置循環播放。准備兩張圖片,分別表示開啟和暫停背景音樂兩種狀態,可以點擊。
XML/Html Code復制內容到剪貼板
- <audio id="music2" src="music.mp3" loop="loop">你的浏覽器不支持audio標簽。</audio>
- <a href="Javascript:playPause();"><img src="pause.gif" width="48" height="50" id="music_btn2" border="0"></a>
Javascript
我們在點擊開關圖片按鈕的時候調用了Javascript腳本,playPause()函數。函數中判斷audio音頻播放狀態,如果已經停止(paused)則調用.play()繼續播放,如果是在播放狀態,則立即暫停播放.pause(),兩種狀態切換時及時更新按鈕圖片,請看代碼:
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標簽。</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>