//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<navigator.mimeTypes.length;i++) nse += navigator.mimeTypes[i].type.toLowerCase();
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('<SCRIPT LANGUAGE=VBScript>\n on error resume next \n result = IsObject(CreateObject("' + ClassID + '"))</SCRIPT>\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 plugin for eclipse3.5 spket-1.6.18 破解版
add-asset-html-webpack-plugin, 将JavaScript或者CSS资产添加到 HTML web pack插件生成的HTML中 add-asset-html-webpack-plugin将JavaScript或者CSS资产添加到 html-webpack-plugin 生成的HTML中 安装使用 npm 安装...
maven-javascript-plugin-2.0.7.jar
maven-javascript-plugin-1.2.3.jar
maven-javascript-plugin-2.0.0.jar
然而,虽然JavaScript可以处理大部分的前端逻辑,但当涉及到与设备硬件或操作系统更深度的交互时,例如访问摄像头、GPS或调用系统API,就需要借助PhoneGap的Plugin机制。 在"自定义plugin插件实现phonegap与Android...
generator-javascript-plugin javascript plugin generator 快速生成javascript项目 Installation First, install and generator-javascript-plugin using (we assume you have pre-installed ). npm install -g yo...
inspekter-plugin-javascript Inspekter JavaScript报告程序模块。 安装 $ npm install inspekter-plugin-javascript 用法 安装此模块后,可以在上使用。 执照 麻省理工学院
这就需要用到自定义plugin插件,通过插件可以实现JavaScript与Android之间的交互。下面我们将详细探讨如何创建并使用自定义plugin,以及它们在PhoneGap中的工作原理。 1. **PhoneGap插件架构** PhoneGap插件是连接...
aptana jquery plugin js javascript
npm install vue-browser-detect-plugin 在您的main.js: import browserDetect from " vue-browser-detect-plugin " ; Vue.use(browserDetect) ; 用法 浏览器信息: vm。$ browserDetect.isIE boolean vm。$ ...
JavaScript GUI Lib: ACE Editor bundle plugin JavaScript GUI Lib: Handlebars bundle plugin JavaScript GUI Lib: Moment.js bundle plugin JQuery3 API Plugin JSch dependency plugin JUnit LDAP Plugin ...
add-asset-html-webpack-plugin 将JavaScript或CSS资产添加到html-webpack-plugin生成的html-webpack-plugin安装使用npm安装插件: $ npm i add-asset-html-webpack-plugin -D 注意:此插件需要html-webpack-plugin@...
接下来,安装eslint-plugin-detect-bad-words : npm $ npm install eslint-plugin-detect-bad-words --save-dev 纱 $ yarn add eslint-plugin-detect-bad-words --dev 用法 将detect-bad-words添加detect-bad-...
在大华摄像头的场景下,WebPlugin提供了一个桥梁,将客户端的JavaScript代码与摄像头设备的底层功能对接,使开发者可以利用Web3.0的相关技术,如HTML5、CSS3和JavaScript,进行更丰富的摄像头应用开发。 二、开发...
`jQuery webcam plugin`是一个优秀的JavaScript库,它利用jQuery框架实现了与浏览器摄像头的交互,让用户无需离开页面即可拍摄并处理照片。 该插件的核心特性包括: 1. **易用性**:基于jQuery的API设计使得该插件...
sonar-cxx-plugin-0.9.3.jar
《geomajas-plugin-editing-javascript-api-1.15.0-M3.zip》是一个与开源GIS(地理信息系统)相关的压缩包,主要包含了用于GWT(Google Web Toolkit)客户端的编辑功能的JavaScript API。这个API是geomajas项目的一...
在这个案例中,“cordova-plugin-wechat”就是这样一个插件,它在JavaScript层提供了一个简单易用的API,用于调用微信的各种功能,而在Android和iOS平台上,它会调用对应的微信SDK实现与微信服务器的交互。...
此插件可让您使用对输入的javascript文件进行。 入门 开始使用您最喜欢的软件包管理器。 用纱安装 纱线添加-D包裹插件模糊处理 使用npm安装 npm install -D parcel-plugin-混淆 在生产模式下运行宗地以混淆代码 ...