2012-01-02 51 views
5

我想用HTML 5音頻支持播放mp3。 我試圖使用音頻標籤,但現在我正在使用JavaScript。HTML 5 - 播放小小的mp3「inline」

我的「播放器」將只是一個微小的播放圖像,按下時播放音頻(不是所有的音頻控制進度)。

我想玩它使用JavaScript。

function playmp3(url){ 
    var audioElement = document.createElement('audio'); 
    audioElement.setAttribute('src', url); 
    audioElement.load(); 
    audioElement.play(); 
} 

這是我的代碼,它不起作用。當我點擊一個我的Play按鈕的圖像時,它會執行正常。

Url是一個包含文件url的字符串。

我正在測試最新版本的Chrome和FF。

+0

你想播放視頻,但它是一個MP3,你正在使用音頻標籤?我很困惑。 – berry120 2012-01-02 18:18:11

+0

你是說你看到錯誤的控件?你的音頻標籤是什麼樣的?你能發表一些代碼示例嗎? – Seth 2012-01-02 18:20:47

+0

您的瀏覽器是否支持MP3? – Michas 2012-01-02 18:35:50

回答

3

在嘗試播放mp3之前嘗試聆聽canplay事件。下面是如何做到這一點的例子:當瀏覽器可以開始播放MP3

function playmp3(url){ 
    var audioElement = document.createElement('audio'); 
    audioElement.setAttribute('src', url); 
    audioElement.load(); 
    audioElement.addEventListener("canplay", function() { 
     audioElement.play(); 
    }); 
} 

canplay事件被觸發,但並不保證它可以播放MP3完成。如果這不符合您的目的,您可以收聽幾個其他相關事件,如loadeddatacanplaythrough