是否有一种javascript方式来检查浏览器是否原生支持MP3?

时间:2009-10-03 19:15:24

标签: javascript html5 mp3

如果浏览器可以播放MP3,那么我将使用音频标签播放文件。如果没有,我将不得不加载一个Flash播放器。

2 个答案:

答案 0 :(得分:17)

var audio  = document.createElement("audio"),
canPlayMP3 = (typeof audio.canPlayType === "function" &&
              audio.canPlayType("audio/mpeg;codecs=mp3") !== "");

修改:

如果您不想使用JavaScript(是的,这适用于支持<audio>但不支持MP3的浏览器),请尝试以下操作:

<audio controls="controls">
<source src="some-audio-file.mp3" type="audio/mpeg;codecs=mp3" />
<!-- if you have an Opus version, also include this:
<source src="some-audio-file.opus" type="audio/ogg;codecs=opus" />
-->
<!-- flash object goes here -->
</audio>

如果您想要自动播放,请在音频元素上添加autoplay属性。

答案 1 :(得分:4)

只需将显示flash声音播放器的代码放入标签中即可。

编辑:使用canPlayType函数:http://www.whatwg.org/specs/web-apps/current-work/multipage/media-elements.html#dom-navigator-canplaytype
您还可以查看错误属性:http://www.whatwg.org/specs/web-apps/current-work/multipage/media-elements.html#dom-media-error