分享

X3D/VRML浏览插件检测器代码_design

 lingbo170 2009-06-06
X3D/VRML浏览插件检测器代码
2008/05/21 23:57
效果可以到http://cic./vrml/vbdetect.html上去看,代码也是从那里下的,仅供学习用,不过真的是好东西!
使用时在网页中插入下面几句可以调用检测:
<!-- Reports Web Browser //-->
<s cript TYPE="text/javas cript" LANGUAGE="Javas cript" SRC="http://cic./vrml/vb_WebDetect.js"></s cript>
<!-- Reports VRML Plugins //-->
<s cript TYPE="text/javas cript" LANGUAGE="Javas cript" SRC="http://cic./vrml/vb_VRMLDetect.js"></s cript>
<!-- Reports Other Plugins //-->
<s cript TYPE="text/javas cript" LANGUAGE="Javas cript" SRC="http://cic./vrml/vb_Web3Detect.js"></s cript>
<!-- Debug Messages //-->
<s cript TYPE="text/javas cript" LANGUAGE="Javas cript" SRC="http://cic./vrml/vb_Debug.js"></s cript>


如果你想学习他的源代码呢,我也贴出来:
1.vb_WebDetect.js

// initialize

var appname = navigator.appName;
var useragent = navigator.userAgent;
if (useragent.indexOf('Opera') != -1) {appname = 'Opera';}
var appversion = navigator.appVersion;

var browString = '';
var browVersion = 0;

var p1 = 0;
var p2 = 0;
var p3 = 0;
var p4 = 0;
var p5 = 0;
var p6 = 0;
var p7 = 0;
var s1 = '';

// test strings
// appname = 'Microsoft Internet Explorer';
// useragent = 'Mozilla/4.0 (compatible; MSIE 5.0; Macintosh OS X)';
// appversion = '4.0 (compatible; MSIE 5.0; Macintosh OS X)';

// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.3) Gecko/20040707';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20040707 Red Hat/1.7.12-1.4.1';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.3) Gecko/20040707 Firefox/0.10.1';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.8) Gecko/20040707 Fedora/1.04-1.3.1 Firefox/1.04';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.5) Gecko/20040707 Firefox/0.9.6';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.5) Gecko/20040707 Netscape/7.2';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.3) Gecko/20040707 K-Meleon/0.82';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.3) Gecko/20040707 MyBrowser/0.1';
// useragent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4a) Gecko/20030408 Phoenix/0.5+';
// useragent = 'Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.4a) Gecko/20030419';
// useragent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4a) Gecko/20030325';
// useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.4)';
// useragent = 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.4b) Gecko/20030511 Camino/0.7+';
// useragent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20031010 Debian/1.4-6';
// useragent = 'Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; 240x320)';
// useragent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.54 [en]';
// useragent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 8.00';
// useragent = 'Opera/8.00 (compatible; MSIE 6.0; Windows NT 5.1; en)';
// useragent = 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-gb) AppleWebKit/103u (KHTML, like Gecko) Safari/100.1';
// useragent = 'Mozilla/5.0 (IRIX; en-US; rv:1.7.3) Gecko/20040707 Firebird/0.6';
// useragent = 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-us) AppleWebKit/48 (like Gecko) Safari/48';
// useragent = 'Mozilla/5.0 (compatible; Konqueror/2.2.2; Linux)';
// useragent = 'Mozilla/5.0 (compatible; Konqueror/3.2; Linux 2.4.22) (KHTML, like Gecko)';
// useragent = 'Mozilla/5.0 Galeon/1.2.5 (X11; Linux i686; U;) Gecko/0';
// useragent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040118 Galeon/1.3.11a';
// useragent = 'Mozilla/4.79 [en] (X11; U; SunOS 5.8 sun4u)';
// useragent = 'Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.0.1) Gecko/20020920 Netscape/7.0';
// useragent = 'Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.6) Gecko/20040116';
// useragent = 'Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.5) Gecko/20031027 Firebird/0.7';
// useragent = 'Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.6) Gecko/20040212 Firefox/0.8';
// useragent = 'Mozilla/5.0 (X11;OpenVMS V7.2 VAX)';
// useragent = 'Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.0; Windows NT 5.1)';
// useragent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Deepnet Explorer 1.4.1; .NET CLR 1.1.4322)';

// look for Internet Explorer
if (appname.indexOf('Internet Explorer') != -1) {
p1 = appversion.indexOf('MSIE') + 5;
s1 = appversion.substring(p1,p1+8);
p2 = s1.indexOf(';');
if (p2 > 0) {browString = ' ' + s1.substring(0,p2);}
if (appname == 'Microsoft Internet Explorer') {appname = 'Internet Explorer';}

// look for AOL browser (IE compatible)
p3 = useragent.indexOf('America Online Browser');
if (p3 != -1) {
s1 = useragent.substring(p3,p3+30);
p4 = s1.indexOf(';');
appname = 'AOL Explorer';
}

// look for AOL Explorer browser (IE compatible)
p7 = useragent.indexOf('AOL Explorer');
if (p7 != -1) {
s1 = useragent.substring(p7,p7+30);
p8 = s1.indexOf(';');
appname = s1.substring(0,p8);
}

// look for Deepnet Explorer browser (IE compatible)
p5 = useragent.indexOf('Deepnet Explorer');
if (p5 != -1) {
s1 = useragent.substring(p5,p5+30);
p6 = s1.indexOf(';');
appname = s1.substring(0,p6);
}

// look for Netscape
} else if (appname == 'Netscape') {
p1 = appversion.indexOf('[') - 1;
if (p1 < 0) {p1 = appversion.indexOf('(') - 1;}
if (p1 > 0) {browString = ' ' + appversion.substring(0,p1);}

// look for Netscape 6 and greater
p2 = useragent.indexOf('Netscape');
if (p2 != -1) {
s1 = useragent.substring(p2,p2+15);
p1 = s1.indexOf('/');
p3 = s1.indexOf(' ');
if (p3 > 0) {
browString = ' ' + s1.substring(p1+1,p3);
} else if (p1 > 0) {
browString = ' ' + s1.substring(p1+1,p1+6);
}
}

// look for Opera
} else if (appname == 'Opera') {
p1 = useragent.indexOf('Opera') + 6;
if (p1 != 6) {
p2 = useragent.indexOf('[') + 1;
if (p2 == 0) {p2 = p1+8;}
s1 = useragent.substring(p1,p2);
browString = ' ' + s1;
p2 = s1.indexOf('[');
if (p2 > 0) {browString = ' ' + s1.substring(0,p2-2);}
p2 = browString.indexOf('\(');
if (p2 > 0) {browString = browString.substring(0,p2-1);}
} else {
p2 = useragent.indexOf('(');
browString = ' ' + useragent.substring(6,p2-1);
}
}
if (browString == '') {browString = ' ' + appversion;}

browVersion = parseFloat(browString.substring(1,browString.length));

// look for Mozilla, Firefox, and variants (Netscape 5)
if (appname == 'Netscape' && browVersion >= 5) {
appname = 'Mozilla';
pg = useragent.indexOf('Gecko/');
p4 = -1;
p6 = useragent.indexOf('Firefox');
if (p6 != -1) {
appname = useragent.substring(p6,p6+20);
p4 = 0;
p5 = 100;
} else if (useragent.indexOf('Fedora') == -1) {
if (pg != -1) {
if (useragent.charCodeAt(pg+15) > 32) {
appname = useragent.substring(pg+15,pg+35);
p4 = pg+15;
p5 = 100;
}
}
}

p6 = useragent.indexOf('Red Hat');
if (p6 != -1) {
appname = 'Mozilla' + useragent.substring(p6+7,p6+27);
p4 = 0;
p5 = 100;
}

// Mozilla revision number (rv:)
p1 = useragent.indexOf('rv:');
if (p1 != -1 && appname.indexOf('Firefox') == -1) {
p1 = p1 + 3;
p2 = useragent.indexOf(')');

if (p4 != -1) {
browString = ' ' + useragent.substring(p5,p5+10);
} else if (browVersion < 6) {
if (p2 > p1) {
browString = ' ' + useragent.substring(p1,p2);
p3 = browString.indexOf(';');
if (p3 != -1) {browString = browString.substring(0,p3);}
} else {
browString = '';
}
}
} else {
browString = '';
}
}

// look for Safari (Mac)
p1 = useragent.indexOf('Safari');
if (p1 != -1) {
appname = 'Safari';
}

// look for Konqueror (Linux)
p1 = useragent.indexOf('Konqueror');
if (p1 != -1) {
appname = 'Konqueror';
s1 = useragent.substring(p1,p1+30);
p2 = s1.indexOf('/');
p3 = s1.indexOf(';');
if (p3 > p2) {browString = s1.substring(p2,p3);}
}

// look for Galeon (Linux)
p1 = useragent.indexOf('Galeon');
if (p1 != -1) {
appname = 'Galeon';
s1 = useragent.substring(p1,p1+30);
p2 = s1.indexOf('/');
p3 = s1.indexOf('(');
if (p3 > p2) {
browString = s1.substring(p2,p3);
} else {
browString = s1.substring(p2,p2+15);
}
}

// look for WebTV
// useragent = 'Mozilla/4.0 WebTV/2.6 (compatible; MSIE 4.0)';
p1 = useragent.indexOf('WebTV');
if (p1 != -1) {
appname = 'WebTV';
browString = '';
s1 = useragent.substring(p1,p1+30);
p2 = s1.indexOf('/');
p3 = s1.indexOf('(');
if (p3 > p2) {browString = s1.substring(p2,p3);}
}

// current web browser urls, update as necessary

var url_IE = '<A HREF="http://www.microsoft.com/windows/ie/default.mspx">';
if (appversion.indexOf('Mac') != -1) {
url_IE = '<A HREF="http://www.microsoft.com/mac/products/internetexplorer/internetexplorer.aspx?pid=internetexplorer">';
}

var url_NS = '<A HREF="http://browser./">';
if (browVersion < 8) {url_NS = '<A HREF="http://browser./ns8/download/archive.jsp">';}

var url_MZ = '<A HREF="http://www.mozilla.org/products/">';

if (useragent.indexOf('IRIX') != -1) {
url_NS = '<A HREF="http://www./products/evaluation/index.html#netscape">';
url_MZ = '<A HREF="http://freeware./index-by-alpha.html#mozilla">';
} else if (useragent.indexOf('SunOS') != -1) {
url_MZ = '<A HREF="http://www./software/solaris/browser/index.html">';
if (browVersion >= 5) {url_NS = url_MZ;}
} else if (useragent.indexOf('HP-UX') != -1) {
url_MZ = '<A HREF="http://www.hp.com/go/mozilla">';
if (browVersion >= 5) {url_NS = url_MZ;}
} else if (useragent.indexOf('AIX') != -1) {
url_MZ = '<A HREF="http://www-03.ibm.com/servers/aix/browsers/">';
if (browVersion >= 5) {url_NS = url_MZ;}
}

// report web browser version

var mozhelp = 0;
document.write('Web browser: <B>');
if (appname.indexOf('Internet Explorer') != -1) {
document.write(url_IE + appname + browString + '</A>');
} else if (appname.indexOf('Netscape') != -1) {
document.write(url_NS + appname + browString + '</A>');
} else if (appname == 'Opera') {
document.write('<A HREF="http://www./">' + appname + browString + '</A>');
} else if (appname == 'Safari') {
document.write('<A HREF="http://www.apple.com/safari/">' + appname + browString + '</A>');
} else if (appname == 'Konqueror') {
document.write('<A HREF="http://www./">' + appname + browString + '</A>');
} else if (appname.indexOf('Epiphany') != -1) {
document.write('<A HREF="http://www./projects/epiphany/">' + appname + '</A>');
} else if (appname == 'Galeon') {
document.write('<A HREF="http://galeon./">' + appname + browString + '</A>');
} else if (appname.indexOf('K-Meleon') != -1) {
document.write('<A HREF="http://kmeleon./">' + appname + browString + '</A>');
} else if (appname.indexOf('AOL Explorer') != -1) {
document.write('<A HREF="http://downloads.channel./browser/">' + appname + '</A>');
} else if (appname.indexOf('Deepnet Explorer') != -1) {
document.write('<A HREF="http://www./">' + appname + '</A>');
} else if (appname == 'WebTV') {
document.write('<A HREF="http://www./">' + appname + browString + '</A>');
} else if (useragent.indexOf('Flock') != -1) {
document.write('<A HREF="http://www./">Flock</A>');
} else if (appname.indexOf('Firefox') != -1) {
document.write('<A HREF="http://www./">' + appname + browString + '</A>');
mozhelp = 1;
} else if (appname.indexOf('Mozilla') != -1) {
document.write(url_MZ + appname + browString + '</A>');
mozhelp = 1;
} else if (appname.indexOf('SeaMonkey') != -1) {
document.write('<A HREF="http://www.mozilla.org/projects/seamonkey/">' + appname + browString + '</A>');
mozhelp = 1;
} else if (appname.indexOf('Camino') != -1) {
document.write('<A HREF="http://www./">' + appname + browString + '</A>');
mozhelp = 1;
} else {
document.write(appname);
}
document.write('</B>');

// Plugin help
if (appname.indexOf('Netscape') != -1 && browVersion > 4) {
document.write(' (<A HREF="http://browser./ns8/community/plugin.jsp">Plugin Help</A>)');
} else if (mozhelp == 1) {
if (appname.indexOf('Firefox') != -1 || appname.indexOf('Camino') != -1) {
document.write(' (<A HREF="https://pfs.mozilla.org/plugins/?application=firefox">Plugin Help</A>)');
} else {
document.write(' (<A HREF="https://pfs.mozilla.org/plugins/?application=mozilla">Plugin Help</A>)');
}
} else if (appname == 'Opera') {
document.write(' (<A HREF="http://www./docs/plugins/">Plugin Help</A>)');
} else if (appname == 'Microsoft Internet Explorer' || appname == 'Internet Explorer') {
document.write(' (<A HREF="http://www.microsoft.com/windows/ie/addon/default.mspx">Plugin Help</A>)');
}

if (appname.indexOf('Internet Explorer') != -1 || (appname == 'Netscape' && browVersion < 5)) {
if (appversion.indexOf('Mac') == -1 && appversion.indexOf('SunOS') == -1 && appversion.indexOf('IRIX') == -1) {
document.write('<BR>Other web browsers: <A HREF="http://www./firefox/">Firefox</A>   <A HREF="http://www./">Opera</A>');
} else if (useragent.indexOf('SunOS') != -1) {
document.write('<BR>Other web browsers: <A HREF="http://www./">Opera</A>');
} else if (useragent.indexOf('OS X') != -1) {
document.write('<BR>Other web browsers: <A HREF="http://www.apple.com/safari/">Safari</A>   <A HREF="http://www./">Camino</A>   <A HREF="http://www./firefox/">Firefox</A>');
}
} else if (appname.indexOf('Safari') != -1) {
document.write('<BR>Other web browsers: <A HREF="http://www./">Camino</A>   <A HREF="http://www./firefox/">Firefox</A>');
}

if (appname == 'Netscape' || appname == 'Mozilla') {document.write('</P>');}

2.vb_VRMLDetect.js

// start other plugin detection for non-Win IE, can be run standalone

var ok = 1;
var nplug = 0;
var plug = new Array(200);
var dp = new Array(10);

// detect plugins where the navigator.plugins array is supported (Netscape, Opera, Mac/Unix IE, Safari, Konqueror)

if (navigator.plugins && navigator.plugins.length > 0) {
var numPlugins = navigator.plugins.length;

// loop over all plugins
for (i = 0; i < numPlugins; i++) {
var plugin = navigator.plugins[i];
var plugnam = plugin.name;

var plugver = '';
var pf = 1000;
desc = plugin.des cription;
dp[0] = desc.indexOf('0');
dp[1] = desc.indexOf('1');
dp[2] = desc.indexOf('2');
dp[3] = desc.indexOf('3');
dp[4] = desc.indexOf('4');
dp[5] = desc.indexOf('5');
dp[6] = desc.indexOf('6');
dp[7] = desc.indexOf('7');
dp[8] = desc.indexOf('8');
dp[9] = desc.indexOf('9');
for (l = 0; l < 10; l++) {if (dp[l] != -1 && dp[l] < pf) {pf = dp[l];}}
if (pf < 1000) {
var s1 = desc.substring(pf,desc.length);
var p2 = s1.indexOf(' ');
var p3 = desc.indexOf('<');
if (p3 == -1) {
if (p2 == -1) {
p2 = 20;
} else if ((s1.length - p2) < 6) {
p2 = s1.length;
}
num = s1.substring(0,p2);
} else {
num = parseFloat(desc.substring(pf));
}
if (plugin.name.indexOf(num) == -1) {plugver = ' ' + num;}
}
if (plugver.indexOf('.') != -1) {plugnam = plugnam + plugver;}

// look for other plugins by checking name
ok = 1;
for (k = 0; k < nplug; k++) {if (plugnam == plug[k]) {ok = 0;}}
if (ok) {
plug[nplug] = plugnam;
nplug = nplug + 1;
}
}
}

plug = plug.sort();

// report other plugins

if (navigator.plugins && navigator.plugins.length > 1) {
document.write('<HR><FONT SIZE=-1>');
document.write('<P><A HREF="./plugins.html">All plugins</A>');
if (nplug > 0) {
document.write(' (' + nplug + '):');
for (k = 0; k < nplug; k++) {
url1 = "";
url2 = "";
if (plug[k].indexOf('AXEL') != -1) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Adobe') == 0) {url1 = '<A HREF="http://www.adobe.com/">'; url2 = '</A>';}
if (plug[k].indexOf('Alambik') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Authorware') == 0) {url1 = '<A HREF="http://www.macromedia.com/">'; url2 = '</A>';}
if (plug[k].indexOf('Beatnik') == 0) {url1 = '<A HREF="http://www./developers/faqs.html#player">'; url2 = '</A>';}
if (plug[k].indexOf('Blender') != -1) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('CrossOver') == 0) {url1 = '<A HREF="http://www./products/crossover/">'; url2 = '</A>';}
if (plug[k].indexOf('Emma') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('EonX') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Flatland') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('HOOPS') != -1) {url1 = '<A HREF="http:///downloads/partviewer/partviewers.htm">'; url2 = '</A>';}
if (plug[k].indexOf('Haptek') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Helix DNA') != -1) {url1 = '<A HREF="http:///">'; url2 = '</A>';}
if (plug[k].indexOf('InterTrust') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Java') == 0) {url1 = '<A HREF="http://java./products/plugin/">'; url2 = '</A>';}
if (plug[k].indexOf('MetaStream') == 0) {url1 = '<A HREF="http://www./pub/products/vmp.html">'; url2 = '</A>';}
if (plug[k].indexOf('My Search') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('O2C') != -1) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Oracle') == 0) {url1 = '<A HREF="http://www.oracle.com/">'; url2 = '</A>';}
if (plug[k].indexOf('Plugger') != -1) {url1 = '<A HREF="http://mozplugger./">'; url2 = '</A>';}
if (plug[k].indexOf('Pulse') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('QuickTime') == 0) {url1 = '<A HREF="http://www.apple.com/quicktime/">'; url2 = '</A>';}
if (plug[k].indexOf('Radish') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Real') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('RichFX') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Shockwave') == 0) {url1 = '<A HREF="http://www.macromedia.com/">'; url2 = '</A>';}
if (plug[k].indexOf('SpinFire') != -1) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Tcl Plugin') == 0) {url1 = '<A HREF="http://www./software/plugin/">'; url2 = '</A>';}
if (plug[k].indexOf('Viewpoint') == 0) {url1 = '<A HREF="http://www./pub/products/vmp.html">'; url2 = '</A>';}
if (plug[k].indexOf('Virtools') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Visviva') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('XVL') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('iPIX') != -1) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('DivX Player') != -1) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('DepthCharge') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
if (plug[k].indexOf('Mozilla ActiveX') == 0) {url1 = '<A HREF="http://www./~locka/mozilla/plugin.htm">'; url2 = '</A>';}
if (plug[k].indexOf('Nullsoft Winamp') == 0) {url1 = '<A HREF="http://www./">'; url2 = '</A>';}
// if (plug[k].indexOf('Windows Media Player') == 0) {url1 = '<A HREF="http://www.microsoft.com/windows/windowsmedia/">'; url2 = '</A>';}
// if (plug[k].indexOf('Microsoft') == 0 && plug[k].indexOf('DRM') > 0) {url1 = '<A HREF="http://www.microsoft.com/windows/windowsmedia/drm/">'; url2 = '</A>';}
document.write(' [' + url1 + plug[k] + url2 + ']');
}
} else {
document.write(': none');
}
document.write('</FONT>');
}

if (navigator.appName == "Microsoft Internet Explorer" && navigator.userAgent.indexOf('Opera') == -1) {
if (navigator.appVersion.indexOf('Win') != -1 && parseFloat(navigator.appVersion) >= 4) {
document.write('<P><A HREF="./pluginsIE.html">More Plugins</A>   ');
}
} else {
document.write('<HR>');
if (parseFloat(navigator.appVersion) >= 5.) {document.write(' ');}
document.write('<P>');
}

document.write('<A HREF="http://www./public_affairs/disclaim.htm">Disclaimer</A>');
// document.write('   <A HREF="mailto:robert.lipman@?subject=VRML Plugin Detector">Email</A>');
if (navigator.appVersion.indexOf('Win') != -1) {
document.write('   <FONT SIZE=-1>(* - Purchasing a license removes the product logo)</FONT>');
}

3.vb_Debug.js

// debug messages, requires vb_VRMLDetect.js to be run first

var dbmsg = '';
dbmsg += 'navigator.appName = ' + navigator.appName + '\n';
dbmsg += 'navigator.appCodeName = ' + navigator.appCodeName + '\n';
dbmsg += 'navigator.appVersion = ' + navigator.appVersion + '\n';
dbmsg += 'navigator.userAgent = ' + navigator.userAgent + '\n';

if (navigator.plugins) {
dbmsg += ' \nnavigator.plugins.length = ' + navigator.plugins.length + '\n';
if (navigator.mimeTypes) {
dbmsg += 'navigator.mimeTypes.length = ' + navigator.mimeTypes.length + '\n';
for (i = 1; i <= nvrmlMime; i++) {
dbmsg += 'navigator.mimeTypes[' + vrmlMime[i] + '] = ' + navigator.mimeTypes[vrmlMime[i]] + '\n';
}
for (j = 1; j <= nx3dMime; j++) {
dbmsg += 'navigator.mimeTypes[' + x3dMime[j] + '] = ' + navigator.mimeTypes[x3dMime[j]] + '\n';
}
}
}

var amp = -1;
var vrml1 = vrmlPlugin;
amp = vrmlPlugin.indexOf('&');
if (amp != -1) {vrml1 = vrmlPlugin.substring(0,amp) + ' ' + vrmlPlugin.substring(amp+6,50);}
dbmsg += ' \nvrmlPlugin = ' + vrml1;

if (nvrml > 1) {
for (k = 1; k <= nvrml; k++) {
amp = vrml[k].indexOf('&');
if (amp == -1) {
dbmsg += '\nvrml[' + k + '] = ' + vrml[k];
} else {
vrml1 = vrml[k].substring(0,amp) + ' ' + vrml[k].substring(amp+6,50);
dbmsg += '\nvrml[' + k + '] = ' + vrml1;
}
}
}

var x3d1 = x3dPlugin;
amp = x3dPlugin.indexOf('&');
if (amp != -1) {x3d1 = x3dPlugin.substring(0,amp) + ' ' + x3dPlugin.substring(amp+6,50);}
dbmsg += '\nx3dPlugin = ' + x3d1;

if (nx3d > 1) {
for (k = 1; k <= nx3d; k++) {
amp = x3d[k].indexOf('&');
if (amp == -1) {
dbmsg += '\nx3d[' + k + '] = ' + x3d[k];
} else {
x3d1 = x3d[k].substring(0,amp) + ' ' + x3d[k].substring(amp+6,50);
dbmsg += '\nx3d[' + k + '] = ' + x3d1;
}
}
}

dbmsg += '\n\nPlugins that have been uninstalled might still be detected.';
if (navigator.appName == "Microsoft Internet Explorer") {dbmsg += '\nSome VRML and X3D plugins are not detected in Internet Explorer.';}
dbmsg += '\nStandalone VRML viewers, Java applets, or Java programs are not detected.';

// display the details button for debug messages

document.write('<P><FORM><FONT SIZE=-1>');
document.write('<INPUT TYPE=BUTTON value="Details" onClick="alert(dbmsg)">');
document.write('</FONT></FORM>');

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约