以下に示すように、Flash Playerとバージョンの可用性を確認しようとしています
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)];
}
}
利用可能な場合、正しいバージョンを返します。
しかし、次の状況で問題に直面しています-
- フラッシュプレーヤーがインストールされていないとします
- ブラウザーを開き (Firefox を使用しています)、上記の JavaScript にアクセスし (HTML 内に埋め込む)、正しい 0.0.0 を返します。
- 今、私はフラッシュプレーヤーをインストールし、ブラウザを閉じずに同じコードにアクセスしましたが、それでもバージョンが間違っている 0.0.0 として返されます
- しかし、ブラウザを再度開くと、正しい結果が得られます。
ブラウザはいつ ActiveXObject をロードしますか? ブラウザを再度開かずに正しいバージョンの Flash Player を取得する方法はありますか?