JavaScript检测Flash安装状态及获取版本号的方法

作者:函数茶馆时间:2026-10-29 03:17:56浏览:161

本文介绍两种使用JavaScript检测用户是否安装Flash插件并获取其版本号的方法。第一种方法通过ActiveXObject和navigator.plugins兼容不同浏览器,返回布尔值与原始版本字符串;第二种方法利用正则表达式解析版本信息,返回标准化的数字版本号。代码涵盖了IE与非IE浏览器的处理逻辑,适用于旧版Web环境中的Flash状态判断。

JavaScript检测Flash安装状态及获取版本号的方法

本文通过具体实例讲解如何利用JavaScript获取Flash版本号,供读者参考学习。

接下来介绍两个JavaScript函数,用于判断用户浏览器是否已安装Flash插件。若检测到已安装,则进一步获取Flash的具体版本号并向用户显示提示信息。

示例1展示了如何获取各浏览器的Flash版本号,若需获取具体的版本数字,可参考后续代码实现。

具体代码实现如下:

function flashChecker() {
var hasFlash = 0; //是否安装了flash
var flashVersion = 0; //flash版本
var isIE =/*@cc_on!@*/0; //是否IE浏览器
if (isIE) {
var swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
if (swf) {
hasFlash = 1;
flashVersion = swf.GetVariable("$version");
        }
} else {
if (navigator.plugins && navigator.plugins.length > 0) {
var swf = navigator.plugins["Shockwave Flash"];
if (swf) {
hasFlash = 1;
flashVersion = swf.description.split(" ");
            }
        }
    }
return {
f: hasFlash,
v: flashVersion
    };
}
 
var fls = flashChecker();
if (fls.f) document.write("您安装了flash,当前flash版本为: " + fls.v + ".x");
else document.write("您没有安装flash");

示例2:标准化版本号获取

示例2展示了另一种获取Flash版本号的方式。


具体代码实现如下:

function getFlashVersion() {
var flashVer = NaN;
var ua = navigator.userAgent;
 
if (window.ActiveXObject) {
var swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
 
if (swf) {
flashVer = Number(swf.GetVariable('$version').split(' ')[1].replace(/,/g, '.').replace(/^(d+.d+).*$/, "$1"));
         }
} else {
if (navigator.plugins && navigator.plugins.length > 0) {
var swf = navigator.plugins['Shockwave Flash'];
 
if (swf) {
var arr = swf.description.split(' ');
for (var i = 0, len = arr.length; i < len; i++) {
var ver = Number(arr[i]);
 
if (!isNaN(ver)) {
flashVer = ver;
break;
                     }
                 }
             }
         }
     }
return flashVer;
 }
var flashVer = getFlashVersion();
if (!isNaN(flashVer)) {
document.write('当前flash player 的版本:' + flashVer);
} else {
document.write('您尚未安装flash播放器');
}

希望本文所述的JavaScript程序设计内容能对读者有所帮助。

作者最新文章