在Internet Explorer中播放HTML音频?

3
我有这段HTML和JS代码,用来播放一些音频:
HTML:
<div id="audio-clips">
    <audio src="/audio/cha-ching.wav" type="audio/wav" id="audio-cha-ching">
</div>

JavaScript
var sfx = $("#audio-clips #audio-cha-ching")[0];
sfx.play();

由于IE8不能识别“play”方法,所以这个功能出现了问题。是否有一种jQuery音频播放方法可以跨浏览器使用相同的代码?我宁愿这样做,而不是尝试回到某些特定于IE的解决方案(因为特定于浏览器的解决方案总是脆弱的)。

2
据我在各种博客中所读到的,使IE8中的音频工作的唯一方法是使用Flash备用方案。您可以尝试http://www.schillmania.com/projects/soundmanager2/,它在不支持HTML音频时提供Flash备用方案。 - Harsha Venkataramu
4个回答

3

我强烈推荐使用howler.js播放音频文件。它在各种浏览器和设备上具有极佳的兼容性。当可用时,它使用HTML5音频,必要时则回退到较旧的技术。


1
它不支持IE8,只支持IE9及以上版本。 - Vsevolod Golovanov

1

2
正如你所说,根据你提供的维基链接,IE不支持.wav,它只支持.mp3.aac - Harsha Venkataramu
WAV格式被许多浏览器支持,包括IE9+。http://www.microsoft.com/web/post/adding-audio-with-the-new-html5-audio-tag - Fenton
@Sohnee 是的,但不支持IE和Opera浏览器。 - Harsha Venkataramu
适用的音频格式有 .mp3、.wav 和 .ogg。http://www.microsoft.com/web/post/adding-audio-with-the-new-html5-audio-tag Opera 也能播放 wav 格式的音频文件。 - Fenton
Opera:"Windows和Mac上的Opera 10.50支持Ogg容器格式、Theora和Vorbis编解码器,以及WAVE容器格式和PCM编解码器。" http://my.opera.com/core/blog/2010/03/03/everything-you-need-to-know-about-html5-video-and-audio-2 - Fenton

1

audio标签在Internet Explorer 9及以上版本中可用。您可以使用Can I Use - Audio进行检查。

wav格式在Firefox 3.6+、Safari 5+、Opera 10.5+和Internet Explorer 9+上支持音频标签。您需要添加一个MP3源以获得Chrome支持。

为了获得向后兼容的支持,您可以使用以下内容-为简洁起见省略Flash元素。

<audio controls preload="auto" autobuffer> 
  <source src="sound.mp3" />
  <source src="sound.ogg" />
  <source src="sound.wav" />
  <!-- now include flash fall back -->
</audio>

-5

将您的音频编码为mp4格式,而不是wav格式。这对我在IE 11中有效。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接