2010-11-21 10 views
1

我只是在我的網站上製作視頻HTML5兼容可移植的iOS設備,我遇到的一件事是我想讓客戶端瀏覽器首先嚐試使用Flash播放器,因爲它更具可定製性,如果Flash不可用,請嘗試使用HTML5。讓瀏覽器首先選擇Flash播放器的代碼,然後回落到HTML5視頻

我曾經想過,也許視頻標籤中的順序會這樣做,但無論標籤的順序如何,它總是會轉到HTML5。

例如:

<video width="640" height="360" controls> 
    <object width="640" height="360"><embed src="flashplayer.swf?movie=movie.mp4" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="360"></embed></object> 
    <source src="/video/ogg/movie.ogg" type="video/ogg"> 
    <source src="/video/mp4/movie.mp4" type="video/mp4"> 
</video> 

任何幫助,將不勝感激,謝謝。

回答

5

您可以使用SwfObject來檢測Flash,並將視頻元素放入SwfObject在Flash可用時替換的div中。

+1

有沒有辦法用JavaScript來做到這一點?我不想使用SwfObject。 – Tom 2010-11-21 02:42:23

+2

是的,如果你喜歡的話(因爲SwfObject是JavaScript),你可以做與SwfObject在你自己的JavaScript中一樣的東西。在SwfObject之前,在你自己的腳本中進行Flash檢測是很常見的,但由於SwfObject可能非常混亂,並且SwfObject很好,所以SwfObject已經變得或多或少成爲事實上的標準。 – 2010-11-21 02:54:41

+0

好,很好,謝謝。我希望有一些是單行或類似的東西,因爲我想在phpBB論壇中使用此代碼,而不必更改所有主題以包含對SWFObject的引用,但聽起來不像那樣可能。 – Tom 2010-11-21 03:28:49

1

您可以嘗試基於Kaltura開源庫的HTML 5 video player widget。它可以讓你自定義HTML 5以及Flash視頻播放器。

+0

有趣,但我正在尋找超輕量級的東西,就像可能只是用HTML標籤或者如果我必須使用JavaScript的簡單「if」語句。 – Tom 2010-11-21 02:46:22

+0

如果你想在用戶擁有它時顯示Flash,你將需要一些方法來檢測它。我想通常是通過嘗試運行SWF並查看結果來進行檢測。如果你不想要所有的定製,請考慮@Lars建議的SwfObject。 – martineno 2010-11-21 02:49:46

2

要做到這一點不使用JavaScript,我想你可以把<object>/<embed><video>標籤作爲後備,如果瀏覽器無法執行的對象,即Flash播放器插件不適:

<object width="640" height="360"> 
    <embed src="flashplayer.swf?movie=movie.mp4" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="360"> 
     <video width="640" height="360" controls> 
      <source src="/video/ogg/movie.ogg" type="video/ogg"> 
      <source src="/video/mp4/movie.mp4" type="video/mp4"> 
     </video> 
    </embed> 
</object> 

注你可以用純粹的<object>標籤來做到這一點,在大多數現代瀏覽器AFAIK中不需要<embed>

+0

我可以離開我的搖桿,但我很確定這是最簡單的方法。 :) – farina 2013-09-18 16:12:09

+0

我真的很喜歡這個解決方案。美麗。 – 2014-05-22 08:35:35

相關問題