HTML5 檢測(cè)瀏覽器是否支持audio祀video元素
在HTML5中,檢測(cè)瀏覽器是否支持audio或video元素,最簡(jiǎn)單的方式是用腳本動(dòng)態(tài)創(chuàng)建它,然后檢測(cè)特定函數(shù)是否存在,代碼如下:
var hasVideo = !!(document.createElement('video').canPiayType);
這段腳本會(huì)動(dòng)態(tài)創(chuàng)建一個(gè)video元素,然后檢查canPlayType()函數(shù)是否存在。通過“!!”運(yùn)算符將結(jié)果轉(zhuǎn)換成布爾值,就可以反映出視頻對(duì)象是否已創(chuàng)建成功。
如果檢測(cè)結(jié)果是瀏覽器不支持audio或video元素的話,則需要針對(duì)這些老的瀏覽器觸發(fā)另外—套腳本來向頁面中引入媒體標(biāo)簽。雖然同樣可以用腳本控制媒體,但使用的是其他播放技術(shù)了,如Flash。
另外,可以在audio或video元素中放入備選內(nèi)容。如果瀏覽器不支持該元素,那么這些備選內(nèi)容就會(huì)顯示在元素對(duì)應(yīng)的位置上。也可以把以Flash插件方式播放同樣視頻的代碼作為備選內(nèi)容。
如果僅僅只想顯示一條文本形式提示信息替代本應(yīng)顯示的內(nèi)容,那就簡(jiǎn)單了,在audio或video元素中按下面這樣的方式插入信息即可,代碼如下:
<video grc="video.ogg" controls>
Your browser does not support HTML5 video.
</video>
如果要為不支持HTML5媒體的瀏覽器提供可選方式來顯示視頻,可以使用相同的方法,將以插件方式播放視頻的代碼作為備選內(nèi)容,放在相同的位置即可,代碼如下:
<video sr c="video.ogg">
<object data="videoplayer.swf" type="application/x-shockwave-flash">
<param name="movie" value="video.swf"/>
</object>
</video>
在video元素中嵌入顯示Flash視頻的object元素之后,如果瀏覽器支持HTML5視頻,那么HTML5視頻會(huì)優(yōu)先顯示,F(xiàn)lash視頻作后備。不過在HTML5被廣泛支持之前,可能需要提供多種的視頻格式。
點(diǎn)擊加載更多評(píng)論>>