簡體   English   中英

如何使用swfobject 2.1自定義“舊版本” SWF輸出?

[英]How to customise “old version” SWF output, with swfobject 2.1?

我一直在為最近的項目使用swfobject,它很棒。 但是,既然我已經成功啟動並在Firefox中運行FlashSwitcher,我注意到當我運行Flash Player 7時,當我運行的版本低於指定的版本時顯示的信息已經過自定義(在這種情況下, swfobject嵌入代碼所在的Moodle頁面)。 附件是由Moodle生成的輸出SWF的屏幕截圖。 我可以確認我的一些用戶也看到了此消息,因此我的FlashSwitcher正常運行。

我的大部分用例Moodle的背景之外,他們是獨立的,我后是他們究竟是如何定制它,我怎樣才能改變自己的定制,以及如何我可以做同樣的當SWFObject的檢測是獨立的。

請注意,強制用戶通過ExpressInstall升級其Flash Player插件已被客戶端拒絕,他們希望采取有啟發性的措施和鏈接-但沒有自動安裝或類似措施。

我的實現使用“兩次熟”方法,因為如果用戶既沒有Flash也沒有Java腳本,或者兩者都不具備,則我具有可訪問性要求以顯示非Flash內容。 這是我的embed方法調用,它在YUI2文檔加載事件觸發時執行:

swfobject.embedSWF("../../swf/video-loader.swf", "flash_object_a", "877", "400", "8.0");

最終,我想將“舊版本”輸出自定義為我創建/編寫的內容。

Moodle上下文中的swfobject 2.1舊版本通知的屏幕快照

歡呼聲,d

您可以使用swfobject的getFlashPlayerVersion方法( 在此處說明)來檢查Flash Player版本並采取適當的措施。

一個簡單的例子是:

var has_version_8_or_greater = swfobject.hasFlashPlayerVersion("8");

if(has_version_8_or_greater){
   //embed SWF using SWFObject
} else {
   //Check to see whether an older version of Flash is found.
   var version = swfobject.getFlashPlayerVersion();
   if(version.major > 0){
      //You have Flash but it's too old.
      var version_str = version.major + "." + version.minor + "." + version.release;
      alert("You have Flash Player version " + version_str + ". Please update!");
   } else {
      //You don't have Flash.
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM