2008-09-23 133 views
10

是否有javascript函數可以用來檢測當前瀏覽器中是否安裝了特定的silverlight版本?通過javascript檢測是否安裝了Silverlight

我對Silverlight 2 Beta 2版本特別感興趣。如果Silverlight插件沒有加載,我不想使用Silverlight控件背後的默認方法。

編輯:從鏈接中接受的答案提供:

包含的Silverlight.js(從Silverlight的SDK)

Silverlight.isInstalled("2.0"); 
+2

請注意,您需要指定次要版本(「.0」)。嘗試`Silverlight.isInstalled(「2」)`在Firefox中工作,但在IE中不起作用。 – Husky 2010-12-10 12:45:41

+0

@Husky沒有理由不把`.0`放進去,因爲它可以在IE中工作,並且像`.1`這樣的客戶機上安裝的任何silverlight子版本在測試`.0時仍然會返回true ` – Blowsie 2013-04-25 13:36:14

回答

0
var hasSilverlight = Boolean(window.Silverlight); 

var hasSilverlight2 = hasSilverlight && Silverlight.isInstalled('2.0'); 

等....

+0

`布爾(window.Silverlight)`僅僅檢查頁面上Javascript庫的存在,而不是Silverlight插件。 – 2014-10-13 13:32:54

0
 if (Silverlight.isInstalled("1.0")) { 
      try { 
       alert("Silverlight Version 1.0 or above is installed"); 
      } 
      catch (err) { 
       alert(err.Description); 
      } 
     } 
     else { 
      alert("No Silverlight is installed"); 
     } 

從這個video

Silverlight.isInstalled始終爲true,因此必須提供版本字符串(如「1.0」)才能使其有用。