2012-01-02 27 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