2011-10-12 36 views
0

如果HTML5不支持,它會回退到flash播放器,但是我怎麼知道flash播放器本身沒有安裝在瀏覽器上的時候jPlayer正試圖回落到閃光燈。我有這個問題。當我沒有閃光燈時,我的播放器就像靜音一樣停下來,而不是給出一個好的警告來安裝閃光燈播放器。現在如果使用標準HTML標籤,我知道如何做到這一點,但如何爲jPlayer做同樣的事情?如何在jPlayer中使用jPlayer播放聲音時檢測flash播放器是否不存在

+0

這個線程:http://stackoverflow.com/questions/998245/how-can-i-detect-if-flash-is-installed-and-if-not -display-a-hidden-div-that-info?answertab = votes#tab-top – Joe

+0

@IAbstract mine的差異。我想知道如何在沒有使用jPlayer的flash播放器時執行此操作。問題是jPlayer嘗試HTML5,然後是FLASH。如果兩者都失敗,是否有回撥功能?我不能使用這樣的簡單解決方案,因爲如果我的默認播放器是FLASH播放器,並且瀏覽器沒有FLASH,它會直接顯示錯誤,但實際上它應該嘗試返回到HTML 5.因此,你去了。 我目前的問題是在IE中。 我打開我的網站 - >(brosere沒有flash player) - >沒有HTML5支持 - >如何在jPlayer中顯示錯誤呢? – footy

+0

其他人有任何想法 – footy

回答

0

嗯,我發現到目前爲止唯一的解決方法是當Flash和HTML5都丟失時,jPlayer不會在其佔位符中放置任何東西。所以最好在jPlayer的佔位符中加上一個警告。

這可能不是一個傻瓜式的解決方案,但這是我能做的最好的。歡迎任何其他建議

1

我使用jquery swfobject plugin當我有jplayer和未安裝Flash類似的問題。

我調用了$ .flash.available,它返回一個布爾值,表示在瀏覽器中是否安裝了flash。那麼你可以拋出你的好警告。

1

這應該工作:

$.jPlayer.prototype._checkForFlash(10) 

10版本。如果版本可用,它將返回true。

你可以使用:

var has_flash = $.jPlayer.prototype._checkForFlash(10) 
if(!has_flash && !Modernizr.video.h264 && !Modernizr.audio.mp3) { 
    $('#players').html('<h2 class="noflash">Please install the <a href="http://get.adobe.com/flashplayer/">Flash Player</a>.</h2>'); 
}