Plugin detect javascript(Referenced)

阅读更多
//This script detects the following:
//Flash
//Windows Media Player
//Java
//Shockwave
//RealPlayer
//QuickTime
//Acrobat Reader
//SVG Viewer



var agt=navigator.userAgent.toLowerCase();
var ie  = (agt.indexOf("msie") != -1);
var ns  = (navigator.appName.indexOf("Netscape") != -1);
var win = ((agt.indexOf("win")!=-1) || (agt.indexOf("32bit")!=-1));
var mac = (agt.indexOf("mac")!=-1);

if (ie && win) { pluginlist = detectIE("Adobe.SVGCtl","SVG Viewer") + detectIE("SWCtl.SWCtl.1","Shockwave Director") + detectIE("ShockwaveFlash.ShockwaveFlash.1","Shockwave Flash") + detectIE("rmocx.RealPlayer G2 Control.1","RealPlayer") + detectIE("QuickTimeCheckObject.QuickTimeCheck.1","QuickTime") + detectIE("MediaPlayer.MediaPlayer.1","Windows Media Player") + detectIE("PDF.PdfCtrl.5","Acrobat Reader"); }
if (ns || !win) {
nse = ""; for (var i=0;i pluginlist = detectNS("image/svg-xml","SVG Viewer") + detectNS("application/x-director","Shockwave Director") + detectNS("application/x-shockwave-flash","Shockwave Flash") + detectNS("audio/x-pn-realaudio-plugin","RealPlayer") + detectNS("video/quicktime","QuickTime") + detectNS("application/x-mplayer2","Windows Media Player") + detectNS("application/pdf","Acrobat Reader");
}

function detectIE(ClassID,name) { result = false; document.write('\n'); if (result) return name+','; else return ''; }
function detectNS(ClassID,name) { n = ""; if (nse.indexOf(ClassID) != -1) if (navigator.mimeTypes[ClassID].enabledPlugin != null) n = name+","; return n; }

pluginlist += navigator.javaEnabled() ? "Java," : "";
if (pluginlist.length > 0) pluginlist = pluginlist.substring(0,pluginlist.length-1);


//SAMPLE USAGE- detect "Flash"
//if (pluginlist.indexOf("Flash")!=-1)
//document.write("You have flash installed")


OR use below function
------------------------- Separate line --------------------------
function isPluginInstalled(pluginName)
{
var pluginInstalled = false;

if(navigator != null && navigator.userAgent.indexOf('MSIE')>0 && navigator.userAgent.indexOf('Opera')<0)
{
try
{
var  swf  =  new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
pluginInstalled = swf != null;
}
catch(err) {}
}
else if(navigator != null && navigator.userAgent.indexOf('Firefox')>0 )
{
if (navigator.plugins)
{
    for (var i=0; i < navigator.plugins.length; i++)
    {
        if (navigator.plugins[i].name.toLowerCase().indexOf(pluginName) >= 0)
        {
        pluginInstalled = true;
        }
    }
}
}
return pluginInstalled;
}


Ref:
http://www.javascriptkit.com/script/script2/plugindetect.shtml

你可能感兴趣的:(JavaScript,Flash,IE,Windows,Opera)