0
我試圖檢查Flash播放器的可用性和版本低於怎樣的JavaScript訪問的ActiveXObject
var a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
if (a) { // a will return null when ActiveX is disabled
d = a.GetVariable("$version");
if (d) {
d = d.split(" ")[1].split(",");
playerVersion = [parseInt(d[0], 10), parseInt(d[1], 10), parseInt(d[2], 10)];
}
}
給出如果存在,它返回正確的版本。
但是,我在下面的情況時面臨一個問題 -
- 假設沒有Flash插件安裝
- 我開我的瀏覽器(我使用Firefox),並訪問上述的JavaScript(嵌入內部HTML),它返回0.0.0,這是正確的
- 現在,我已經安裝了flash播放器,並訪問相同的代碼,而不關閉瀏覽器,它仍然返回版本爲0.0.0這是錯誤的
- 但是,如果我重新打開瀏覽器,它正在給cor直接結果。
瀏覽器何時加載ActiveXObject?有沒有辦法在不重新打開瀏覽器的情況下獲得正確的Flash Player版本?
感謝David的快速回復。我已經嘗試通過重新加載(刷新)瀏覽器。但它仍然沒有給我正確的結果。只有重新打開瀏覽器後才能得到正確的結果(關閉然後再次打開)。如果Flash播放器不可用,我打算重定向到不同的頁面,並且用戶可以在安裝Flash播放器之後單擊鏈接返回原始頁面,而不關閉瀏覽器。 – dgm 2013-04-29 11:51:46
這很奇怪......你是否嘗試添加一個隱藏的「假」Flash對象? – 2013-04-29 11:54:10