我想知道当src元素的type属性设置为错误的格式时,它可能的HTML音频元素如何播放歌曲?
例如,我将mp4音频文件的type属性设置为audio / wav,即使我没有指定回退源,它仍会播放?此外,如果您省略了类型,它仍然可以找出正确的音频格式。
所以我的问题是源元素的type属性的目的是什么?
<audio controls="controls">
Your browser does not support the <code>audio</code> element.
<source src="http://a898.phobos.apple.com/us/r1000/039/Music6/v4/13/22/67/1322678b-e40d-fb4d-8d9b-3268fe03b000/mzaf_8818596367816221008.plus.aac.p.m4a">
</audio>
这是一个显示效果https://jsfiddle.net/abftb7sm/4/
的jsfiddle答案 0 :(得分:2)
经过一些测试后,根据the specs,MediaElements的type
属性似乎有助于浏览器确定是否应该以及如何提取数据。
type属性提供媒体资源的类型,以帮助用户代理确定它是否可以在获取之前播放此媒体资源。
在Firefox上,
将其设置为任何有效值但不符合实际文件类型将使UA获取数据为plain
。然后,当被要求播放时,UA会仔细检查数据类型,并能够覆盖您提供的type
。
将其设置为某个无效值(例如"Audio/mpeg"
而不是"audio/mpeg"
)会使您的UA甚至无法获取任何数据。这里没有仔细检查。
Chrome似乎永远不会相信我们......