2010-07-06 106 views
2

我正在玩HTML5視頻,因爲它有很好的iphone/ipad後備。 html5視頻首先檢查<source>元素,如果不支持任何格式,則回落到<video>標記(例如,閃光燈)內提供的任何內容。html5視頻標籤+ flash視頻:如何更改優先級

我很想扭轉行爲來節省帶寬:默認情況下使用Flash,如果不可用,則返回到html5視頻。

是否有任何獲得此行爲的方式不使用javascript? (然後解決方案變得非常明顯)。

best,hansi, -

p.s.我確實嘗試將元素「內向外」(<object><video/></object>而不是<video><object/></video>,但這會導致視頻顯示兩次)

p.p.s.我目前的解決方案是

if(navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]){ ... } 
else{ ... } 

這是次優的,因爲它適用於iPhone/iPad的,但使用舊的瀏覽器時,會導致很大的混亂沒有安裝Flash。

+1

您的標記中是否包含type =「application/x-shockwave-flash」?例如, 2010-07-07 15:05:26

回答

2

非常感謝「zach at longtail」!的工作!

供參考,在這裏是如何「先閃爍,然後HTML5」得到的行爲:

<object type="application/x-shockwave-flash" width="..." height="..." data="..."> 
    <param name="movie" value="..." /> 
    <video width="..." height="..."> 
     <source src="..." type="video/mp4" /> 
     <source src="..." type="video/webm" /> 
     <source src="..." type="video/ogg" /> 
    </video> 
</object> 

爲了提供HTML5替代品到YouTube/VIMEO嵌入: 請注意,具有<object data="..." />屬性至關重要,並且它在嵌入代碼中缺少youtube/vimeo /等。提供。 一定要改變這一點,只要將<video/>標記放入您複製粘貼的代碼中,就會讓您感到頭痛。