一个怎样测量浏览器是否支持audio和video的问题,这篇文章我们就来解决这个问题。
在HTML5下测量浏览器是否支持audio元素或video元素最简单的方法是用脚本动态创建它,之后检查特定函数是否存在:
1
varhasVideo=!!(document.createElement('video').canPlayType);
这段脚本会动态创建一个video元素,之后检测canPlayType()函数是否存在。通过“!!”运算符将结果转换成布尔值,就可以反映出视频对象是否已创建成功。
若果测量结果是浏览器不支持audio或video元素的话,则须要针对那些老的浏览器触发另外一套脚本来向页面中引入媒体标签,尽管同样可以用脚本控制媒体,但使用的是例如F1ash等
其他播放技术了。
另外,可以在audio元素或video元素中倒入备选内容,假如浏览器不支持该元素,这种备选内容都会显示在元素对应的位置。可以把以Flash插件形式播放同样视频的代码作为备选内容。
假如仅仅只想显示一条文本方式提示信息代替本应显示的内容。那就简单了,在audio元素或video元素中按下边这样插入信息即可:
1
2
3
YourbrowserdoesnotsupportHTML5video.
若果是要为不支持HTML5媒体的浏览器提供可选方法来显示视频,可以使用相同的方式,将以插件形式播放视频的代码作为备选内容,置于相同的位置即可:
1
2
3
4
5
在video元素中嵌人显示Flash视频的object元素以后,假如浏览器支持HTML5视频,这么HTML5视频会优先显示,Flash视频作后备。不过在HTML5被广泛支持之前,可能须要提供多种视频格式。