利用HTML5實(shí)現(xiàn)使用按鈕控制背景音樂(lè)開(kāi)關(guān)

字號(hào):


    我們有時(shí)會(huì)在頁(yè)面上加上背景音樂(lè),允許用戶自己開(kāi)啟和關(guān)閉背景音樂(lè),尤其基于手機(jī)html5制作的多媒體頁(yè)面,HTML5的audio音頻標(biāo)簽可以獲取音頻的播放狀態(tài),通過(guò)觸摸按鈕就可以關(guān)閉和開(kāi)啟背景音樂(lè)。
    效果圖如下所示:
    名單
    HTML
    建立一個(gè)HTML5頁(yè)面,放置<audio>標(biāo)簽,設(shè)置音頻文件源,設(shè)置循環(huán)播放。準(zhǔn)備兩張圖片,分別表示開(kāi)啟和暫停背景音樂(lè)兩種狀態(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"></a>  
    Javascript
    我們?cè)邳c(diǎn)擊開(kāi)關(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í)更新按鈕圖片,請(qǐng)看代碼:
    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代碼可以這樣寫(xiě):
    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"></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>