勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

JavaScriptでFlashのバージョンを取得する方法

   2024/05/22  JavaScript

Flashのバージョン取得をjavascriptで行うソースコードのを以下にメモ。

 

ソースコード

var flashVer = (function() {
    if (navigator.plugins && navigator.mimeTypes['application/x-shockwave-flash']) {
        var plugin = navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin;
        if (plugin && plugin.description) {
            var ver = plugin.description.replace(/^[A-Za-z\s]+/, '').replace(
                /(\s+r|\s+b[0-9]+)/, ".");
        }
    } else {
        var x = '';
        try {
            var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
            x = axo.GetVariable("$version");
        } catch (e) {
            try {
                axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
                x = "WIN 6,0,21,0";
                axo.AllowScriptAccess = "always";
                x = axo.GetVariable("$version");
            } catch (e) {
                if (!x.match(/^WIN/)) {
                    try {
                        axo = null;
                        axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
                        x = axo.GetVariable("$version");
                    } catch (e) {
                        if (axo) {
                            x = "WIN 3,0,18,0";
                        } else {
                            try {
                                axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
                                x = "WIN 2,0,0,11";
                            } catch (e) {
                                x = "WIN 0,0,0,0";
                            }
                        }
                    }
                }
            }
        }
        ver = x.replace(/^WIN /, '').replace(/,[0-9]+$/, '').replace(/,/g, '.');
    }
    return (ver == '0.0.0') ? false : ver;
}());

 - JavaScript

  関連記事

Leafletにて地図を全画面(フルスクリーン)表示機能を追加する方法
Leafletにて地図を全画面(フルスクリーン)表示機能を追加する方法

Leafletにて表示されている地図に全画面表示ボタンが設置されているサイトがあ ...

バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法
バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法

あるサイトのコーディングデータを貰った際に「lazysizes」というJavaS ...

JavaScriptにて正規表現を用いずに文字列の一括置換を行う方法
JavaScriptにて正規表現を用いずに文字列の一括置換を行う方法

文字列の一括置換を行う際、PHPだとstr_replaceで問題無く対応できるが ...

JavaScriptでブラウザ幅によって異なる処理を行う方法(matchMedia)
JavaScriptでブラウザ幅によって異なる処理を行う方法(matchMedia)

JavaScriptでブラウザ幅によって異なる処理を行う場合、「window.a ...

jQueryのloadメソッドでファイル(ページ)を呼び出す
jQueryのloadメソッドでファイル(ページ)を呼び出す

サイト内でヘッダーやフッター等共通のパーツはそれぞれ別ファイルに分けてPHPのi ...