<p>** 不同浏览器版本可能存在差异,使用时请测试自己的环境 **</p><p>测试时各个浏览器版本</p><p>IE: 11.953.14393.0</p><p>Edge: Microsoft Edge 38.14393.0.0;Microsoft EdgeHTML 14.14393</p><p>Chrome: 57.0.2987.133 (64-bit)</p><p>FireFox: 52.0.1 (32 位)</p><p>360极速浏览器: 版本号:8.7.0.306;内核版本号:50.0.2661.102</p><p>360安全浏览器: 版本号:8.1.1.400;内核版本号:45.0.2454.101</p><p>程序源码</p><pre class="brush:html;toolbar:false"><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<base>
<metacharset="utf-8">
<title>JS获取浏览器类型和版本信息</title>
<script>
functionbro(){
varis360=false;
varisIE=false;
varisFirefox=false;
varisChrome=false;
varisEdge=false;
varbroName='Runing';
varstr='';
varstrStart=0;
varstrStop=0;
vararr=newArray();
vartemp='';
varuserAgent=window.navigator.userAgent;//包含以下属性中所有或一部分的字符串:appCodeName,appName,appVersion,language,platform
/*alert(userAgent);*/
//FireFox
if(userAgent.indexOf('Firefox')!=-1){
isFireFox=true;
/*broName='FireFox浏览器';*/
strStart=userAgent.indexOf('Firefox');
temp=userAgent.substring(strStart);
broName=temp.replace('/','版本号')
}
//Edge
if(userAgent.indexOf('Edge')!=-1){
isEdge=true;
/*broName='Edge浏览器';*/
strStart=userAgent.indexOf('Edge');
temp=userAgent.substring(strStart);
broName=temp.replace('/','版本号');
}
//IE浏览器
if(userAgent.indexOf('NET')!=-1&&userAgent.indexOf("rv")!=-1){
isIE=true;
/*broName='IE浏览器';*/
strStart=userAgent.indexOf('rv');
strStop=userAgent.indexOf(')');
temp=userAgent.substring(strStart,strStop);
broName=temp.replace('rv','IE').replace(':','版本号');
}
//360极速模式可以区分360安全浏览器和360极速浏览器
if(userAgent.indexOf('WOW')!=-1&&userAgent.indexOf("NET")<0&&userAgent.indexOf("Firefox")<0){
if(navigator.javaEnabled()){
is360=true;
broName='360安全浏览器-极速模式';
}else{
is360=true;
broName='360极速浏览器-极速模式';
}
}
//360兼容
if(userAgent.indexOf('WOW')!=-1&&userAgent.indexOf("NET")!=-1&&userAgent.indexOf("MSIE")!=-1&&userAgent.indexOf("rv")<0){
is360=true;
broName='360兼容模式';
}
//Chrome浏览器
if(userAgent.indexOf('WOW')<0&&userAgent.indexOf("Edge")<0){
isChrome=true;
/*broName='Chrome浏览器';*/
strStart=userAgent.indexOf('Chrome');
strStop=userAgent.indexOf('Safari');
temp=userAgent.substring(strStart,strStop);
broName=temp.replace('/','版本号');
}
document.getElementById('broType').value=broName;
}
</script>
</head>
<bodyonload="bro();">
<inputtype="text"id="broType"name="broType"style="width:200px;">
<h4>JavaScript获取浏览器版本信息</h4>
</body>
</html>
获取浏览器详细信息
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<title>NewDocument</title>
<metaname="viewport"content="width=device-width,initial-scale=1.0,user-scalable=no">
<metaname="Generator"content="EditPlus">
<metaname="Author"content="">
<metaname="Keywords"content="">
<metacharset="utf-8"/>
<metaname="Description"content="">
<scriptid=clientEventHandlersJSlanguage=javascript>
/******************************************下为浏览器信息************************************************/
//获取浏览器相关信息
functionallinfo(){
varappName=navigator.appName;//浏览器的正式名称
varappVersion=navigator.appVersion;//浏览器的版本号
varcookieEnabled=navigator.cookieEnabled;//返回用户浏览器是否启用了cookie
varcpuClass=navigator.cpuClass;//返回用户计算机的cpu的型号,通常intel芯片返回"x86"(火狐没有)
varmimeType=navigator.mimeTypes;//浏览器支持的所有MIME类型的数组
varplatform=navigator.platform;//浏览器正在运行的操作系统平台,包括Win16(windows3.x)
//Win32(windows98,Me,NT,2000,xp),Mac68K(Macintosh680x0)
//和MacPPC(MacintoshPowerPC)
varplugins=navigator.plugins;//安装在浏览器上的所有插件的数组
varuserLanguage=navigator.userLanguage;//用户在自己的操作系统上设置的语言(火狐没有)
varuserAgent=navigator.userAgent;//包含以下属性中所有或一部分的字符串:appCodeName,appName,appVersion,language,platform
varsystemLanguage=navigator.systemLanguage;//用户操作系统支持的默认语言(火狐没有)
//director
varappCodeName=navigator.appCodeName;//与浏览器相关的内部代码名
varappMinorVersion=navigator.appMinorVersion;//辅版本号(通常应用于浏览器的补丁或服务包)
varlanguage=navigator.language;//浏览器支持的语言(IE没有)
varonLine=navigator.onLine;//返回浏览器是否处于在线模式(IE4以上版本)
varopsProfile=navigator.opsProfile;//未定义(IE、火狐没有)
varoscpu=navigator.oscpu;//浏览器正在运行的操作系统,其中可能有CPU的信息(IE没有)
varproduct=navigator.product;//浏览器的产品名(IE没有)
varproductSub=navigator.productSub;//关于浏览器更多信息(IE没有)
varsecurityPolicy=navigator.securityPolicy;//浏览器支持的加密类型(IE没有)
varuserProfile=navigator.userProfile;//返回一个UserProfile对象,它存储用户的个人信息(火狐没有)
varvender=navigator.vender;//浏览器厂商名称(IE、火狐没有)
varvendorSub=navigator.vendorSub;//关于浏览器厂商更多的信息
varwebkitPersistentStorage=navigator.webkitPersistentStorage;
varinfo="<tableborder=1>";
vartype="";
if(isIe()){
type="IE浏览器";
}elseif(isFireFox()){
type="火狐浏览器";
}
info+="<tr><td>IE特有属性:</td><td>"+navigator.msManipulationViewsEnabled+"</td></tr>";
info+="<tr><td>浏览器类型:</td><td>"+type+"</td></tr>";
info+="<tr><td>weizhi:</td><td>"+webkitPersistentStorage+"</td></tr>";
info+="<tr><td>浏览器属性信息:</td><td>"+userAgent+"</td></tr>";
info+="<tr><td>浏览器的正式名称:</td><td>"+appName+"</td></tr>";
info+="<tr><td>浏览器的版本号:</td><td>"+appVersion+"</td></tr>";
info+="<tr><td>浏览器相关的内部代码名:</td><td>"+appCodeName+"</td></tr>";
info+="<tr><td>浏览器相关的辅代码号:</td><td>"+appMinorVersion+"</td></tr>";
info+="<tr><td>浏览器支持的语言IE没有):</td><td>"+language+"</td></tr>";
info+="<tr><td>浏览器是否处于在线模式:</td><td>"+onLine+"</td></tr>";
info+="<tr><td>浏览器的产品名(IE没有):</td><td>"+product+"</td></tr>";
info+="<tr><td>浏览器更多信息:</td><td>"+productSub+"</td></tr>";
info+="<tr><td>浏览器厂商名称:</td><td>"+vender+"</td></tr>";
info+="<tr><td>浏览器厂商更多信息:</td><td>"+vendorSub+"</td></tr>";
info+="<tr><td>浏览器的是否启用了cookie:</td><td>"+cookieEnabled+"</td></tr>";
info+="<tr><td>cpu等级:</td><td>"+cpuClass+"</td></tr>";
info+="<tr><td>浏览器的MIME类型:</td><td>"+mimeType.length+"</td></tr>";
info+="<tr><td>系统平台:</td><td>"+platform+"</td></tr>";
info+="<tr><td>安装的插件:</td><td>"+plugins+"</td></tr>";
info+="<tr><td>插件的数量:</td><td>"+plugins.length+"</td></tr>";
info+="<tr><td>插件的名称:</td><td>"+getPluginName()+"</td></tr>";
info+="<tr><td>用户设置的操作系统语言:</td><td>"+userLanguage+"</td></tr>";
info+="<tr><td>操作系统支持的默认语言:</td><td>"+systemLanguage+"</td></tr>";
info+="<tr><td>Director:</td><td>"+checkePlugs("Director")+"</td></tr>";
info+="<tr><td>javaEnabled:</td><td>"+navigator.javaEnabled()+"</td></tr>";
info+="<tr><td>是否有quickTime:</td><td>"+checkePlugs("QuickTime")+"</td></tr>";
info+="<tr><td>flash插件情况:</td><td>"+checkePlugs('ShockwaveFlash')+"</td></tr>";
info+="<tr><td>是否有MediaPlayer:</td><td>"+checkePlugs("MediaPlayer")+"</td></tr>";
info+="<tr><td>是否有realPlayer:</td><td>"+checkePlugs("RealPlayer")+"</td></tr>";
info+="<tr><td>屏幕分辨率高度:</td><td>"+window.screen.height+"</td></tr>";
info+="<tr><td>屏幕分辨率宽度:</td><td>"+window.screen.width+"</td></tr>";
info+="<tr><td>颜色质量:</td><td>"+window.screen.colorDepth+"位</td></tr>";
info+="<tr><td>像素:</td><td>"+window.screen.deviceXDPI+"像素/英寸</td></tr>";
info+="<tr><td>字体是否平滑:</td><td>"+window.screen.fontSmoothingEnabled+"</td></tr>";
//info+="<tr><td>规定浏览器是否启用数据污点:</td><td>"+navigator.taintEnabled()+"</td></tr>";
info+="</table>";
document.getElementById("elInfo").innerHTML=info;
returninfo;
}
//获取插件所有的名称
functiongetPluginName(){
varinfo="";
varplugins=navigator.plugins;
if(plugins.length>0){
for(i=0;i<navigator.plugins.length;i++){
info+=navigator.plugins[i].name+";";
}
}
returninfo;
}
//检查是否安装了某插件,如果安装了返回版本号
functioncheckePlugs(pluginname){
varf="-"
varplugins=navigator.plugins;
if(plugins.length>0){
for(i=0;i<navigator.plugins.length;i++){
if(navigator.plugins[i].name.indexOf(pluginname)>=0){
f=navigator.plugins[i].description.split(pluginname)[1];
returnf;
break;
}
}
}
returnfalse;
}
//判断是否IE
functionisIe(){
vari=navigator.userAgent.toLowerCase().indexOf("msie");
returni>=0;
}
//判断是否firefox
functionisFireFox(){
vari=navigator.userAgent.toLowerCase().indexOf("firefox");
returni>=0;
}
/******************************************以上为浏览器信息,以下为pc信息************************************************/
varlocator=newActiveXObject("WbemScripting.SWbemLocator");
varservice=locator.ConnectServer(".");
functioncpuInfo(){//CPU信息
varproperties=service.ExecQuery("SELECT*FROMWin32_Processor");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>CPU信息</td></tr>";
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<trstyle='color:red'><td>CPU序列号:"+p.ProcessorID+"</td></tr>";
info+="<tr><td>"+p.Caption+"</td></tr>";
info+="<tr><td>CPU编号:"+p.DeviceID+"</td></tr>";
info+="<tr><td>CPU型号:"+p.Name+"</td></tr>";
info+="<tr><td>CPU状态:"+p.CpuStatus+"</td></tr>";
info+="<tr><td>CPU可用性:"+p.Availability+"</td></tr>";
info+="<tr><td>CUPLevel:"+p.Level+"</td></tr>";
info+="<tr><td>主机名称:"+p.SystemName+"</td></tr>";
info+="<tr><td>ProcessorType:"+p.ProcessorType+"</td></tr>";
}
info+="</table>";
returninfo;
}
functionsoftDisk(){//软盘信息
varproperties=service.ExecQuery("SELECT*FROMWin32_FloppyDrive");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>软盘信息</td></tr>";
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<tr><td>"+p.Description+"</td></tr>";
info+="<tr><td>"+p.DeviceID+"</td></tr>";
info+="<tr><td>"+p.Status+"</td></tr>";
info+="<tr><td>"+p.Manufacuturer+"</td></tr>";
}
info+="</table>";
returninfo;
}
functionRomInfo(){//CD-ROM信息
varproperties=service.ExecQuery("SELECT*FROMWin32_CDROMDrive");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>CD-ROM信息</td></tr>";
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<tr><td>驱动器名称:"+p.Caption+"</td></tr>";
info+="<tr><td>描述:"+p.Description+"</td></tr>";
info+="<tr><td>盘符:"+p.Drive+"</td></tr>";
info+="<tr><td>驱动器状态:"+p.Status+"</td></tr>";
info+="<tr><td>是否在使用:"+p.MediaLoaded+"</td></tr>";
}
info+="</table>";
returninfo;
}
functionkeyBoardInfo(){//键盘信息
varproperties=service.ExecQuery("SELECT*FROMWin32_Keyboard");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>键盘信息</td></tr>";
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<tr><td>键盘描述:"+p.Description+"</td></tr>";
info+="<tr><td>键盘名称:"+p.Name+"</td></tr>";
info+="<tr><td>键盘状态:"+p.Status+"</td></tr>";
}
info+="</table>";
returninfo;
}
functionmainBoard(){//主板信息
varproperties=service.ExecQuery("SELECT*FROMWin32_BaseBoard");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>主板信息</td></tr>";
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<trstyle='color:red'><td>主板ID:"+p.SerialNumber+"</td></tr>";
info+="<tr><td>"+p.HostingBoard+"</td></tr>";
info+="<tr><td>制造商:"+p.Manufacturer+"</td></tr>";
info+="<tr><td>是否开启:"+p.PoweredOn+"</td></tr>";
info+="<tr><td>型号:"+p.Product+"</td></tr>";
info+="<tr><td>版本:"+p.Version+"</td></tr>";
}
info+="</table>";
returninfo;
}
functiondisk(){//硬盘序列号信息
varproperties=service.ExecQuery("SELECT*FROMWin32_DiskDrive");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>硬盘信息</td></tr>";
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<trstyle='color:red'><td>硬盘序列号:"+p.signature+"</td></tr>";
}
info+="</table>";
returninfo;
}
//获取Ram信息
functionraminfo(){
varsystem=newEnumerator(service.ExecQuery("SELECT*FROMWin32_ComputerSystem")).item();
varphysicMenCap=Math.ceil(system.TotalPhysicalMemory/1024/1024);
//内存信息
varmemory=newEnumerator(service.ExecQuery("SELECT*FROMWin32_PhysicalMemory"));
for(varmem=[],i=0;!memory.atEnd();memory.moveNext()){
mem[i++]={
cap:memory.item().Capacity/1024/1024,
speed:memory.item().Speed
};
}
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>内存信息</td></tr>";
info+="<trstyle='color:red'><td>内存总量:"+(mem[0].cap+mem[1].cap)+"M</td></tr>";
info+="<trstyle='color:red'><td>可用物理内存:"+physicMenCap+"M</td></tr>";
info+="</table>";
returninfo;
}
//获取网络连接信息
functionipinfo(){
varproperties=service.ExecQuery("SELECT*FROMWin32_NetworkAdapterConfigurationWhereIPEnabled=TRUE");
vare=newEnumerator(properties);
varinfo="<tableborder=1>";
info+="<trbgcolor='#CDEDED'style='font-weight:bold;'><tdwidth='450'>网络连接信息:</td></tr>";
vari=1;
for(;!e.atEnd();e.moveNext()){
varp=e.item();
info+="<trstyle='color:red'><td>MAC地址"+i+":"+p.MACAddress+"</td></tr>";
info+="<trstyle='color:red'><td>IP地址"+i+":"+p.IPAddress(0)+"</td></tr>";
i++;
}
info+="</table>";
returninfo;
}
functionpcInfo(){//所有信息
varinfo=cpuInfo();
info+=disk();
info+=raminfo();
info+=mainBoard();
info+=ipinfo();
info+=keyBoardInfo();
info+=RomInfo();
info+=softDisk();
document.getElementById('elInfo').innerHTML=info;
returninfo;
}
/******************************************以上为pc信息************************************************/
</script>
</head>
<body>
<INPUTid="Button1"type="button"value="浏览器所有信息"name="Button1"language=javascriptonclick="allinfo()">
<INPUTid="Button1"type="button"value="客户端pc信息"name="Button1"language=javascriptonclick="pcInfo()">
<divid="elInfo">
</div>
</body>
</html></pre>