0

我有一个带有多个标签的网页,例如:

<audio controls="controls" preload="metadata">
    <source type="audio/mpeg" src="file1.mp3"></source>
</audio>

每个标签播放不同的文件,每个 mp3 文件都相当长(即它们需要一分钟才能完全下载)。

如果我有超过 4 个标签,IE9 中只会显示前 4 个。其他的将一一显示,每次前 4 个音频播放器中的一个完成加载其音频文件时。

事实上,在其中一个音频播放器停止加载之前,单击页面中的任何超链接都不会加载相应的 HTTP 资源。似乎音频标签对同时 HTTP 连接的数量设置了硬限制。IE9 通常有更高的限制,所以这看起来很奇怪。

其他需要注意的事项:

  • 音频文件自行加载和播放

    • 我不需要同时播放文件,我只想有一个页面显示不同文件的多个音频播放器

    • 我尝试对预加载属性使用不同的值(无 | 元数据 | 自动)。'none' 在 IE9 中完全隐藏了音频播放器,元数据和自动显示同样的问题。

    • 这个答案提到IE9中最多40个玩家应该没问题,但我不能超过4个?

任何想法表示赞赏,谢谢。

4

1 回答 1

2

当音频标签的预加载属性设置为“元数据”时,IE9 确实存在一些故障。

更多响应行为的可能解决方法是:

  1. 环境preload = "none"

  2. 用图像包装<audio>标签或用背景图像包装 div

  3. 将“click”事件附加到将触发的图像/div:document.getElementById('audio1').play()

希望它适合您的需求。

于 2012-06-17T12:28:42.647 回答