利用HTML5實現(xiàn)使用按鈕控制背景音樂開關

字號:


    我們有時會在頁面上加上背景音樂,允許用戶自己開啟和關閉背景音樂,尤其基于手機html5制作的多媒體頁面,HTML5的audio音頻標簽可以獲取音頻的播放狀態(tài),通過觸摸按鈕就可以關閉和開啟背景音樂。
    效果圖如下所示:
    名單
    HTML
    建立一個HTML5頁面,放置<audio>標簽,設置音頻文件源,設置循環(huán)播放。準備兩張圖片,分別表示開啟和暫停背景音樂兩種狀態(tài),可以點擊。
    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"></a>  
    Javascript
    我們在點擊開關圖片按鈕的時候調(diào)用了javascript腳本,playPause()函數(shù)。函數(shù)中判斷audio音頻播放狀態(tài),如果已經(jīng)停止(paused)則調(diào)用.play()繼續(xù)播放,如果是在播放狀態(tài),則立即暫停播放.pause(),兩種狀態(tài)切換時及時更新按鈕圖片,請看代碼:
    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"></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>