zl程序教程

您现在的位置是:首页 >  后端

当前栏目

用js实现的检测浏览器和系统的函数

JS浏览器系统 实现 函数 检测
2023-06-13 09:14:09 时间
复制代码代码如下:

varsUserAgent=navigator.userAgent;
varfAppVersion=parseFloat(navigator.appVersion);
functioncompareVersions(sVersion1,sVersion2){
varaVersion1=sVersion1.split(".");
varaVersion2=sVersion2.split(".");
if(aVersion1.length>aVersion2.length){
for(vari=0;i<aVersion1.length-aVersion2.length;i++){
aVersion2.push("0");
}
}elseif(aVersion1.length<aVersion2.length){
for(vari=0;i<aVersion2.length-aVersion1.length;i++){
aVersion1.push("0");
}
}
for(vari=0;i<aVersion1.length;i++){
if(aVersion1<aVersion2){
return-1;
}elseif(aVersion1>aVersion2){
return1;
}
}
return0;
}
varisOpera=sUserAgent.indexOf("Opera")>-1;
varisMinOpera4=isMinOpera5=isMinOpera6=isMinOpera7=isMinOpera7_5=false;
if(isOpera){
varfOperaVersion;
if(navigator.appName=="Opera"){
fOperaVersion=fAppVersion;
}else{
varreOperaVersion=newRegExp("Opera(\\d+\\.\\d+)");
reOperaVersion.test(sUserAgent);
fOperaVersion=parseFloat(RegExp["$1"]);
}
isMinOpera4=fOperaVersion>=4;
isMinOpera5=fOperaVersion>=5;
isMinOpera6=fOperaVersion>=6;
isMinOpera7=fOperaVersion>=7;
isMinOpera7_5=fOperaVersion>=7.5;
}
varisKHTML=sUserAgent.indexOf("KHTML")>-1
||sUserAgent.indexOf("Konqueror")>-1
||sUserAgent.indexOf("AppleWebKit")>-1;
varisMinSafari1=isMinSafari1_2=false;
varisMinKonq2_2=isMinKonq3=isMinKonq3_1=isMinKonq3_2=false;
if(isKHTML){
isSafari=sUserAgent.indexOf("AppleWebKit")>-1;
isKonq=sUserAgent.indexOf("Konqueror")>-1;
if(isSafari){
varreAppleWebKit=newRegExp("AppleWebKit\\/(\\d+(?:\\.\\d*)?)");
reAppleWebKit.test(sUserAgent);
varfAppleWebKitVersion=parseFloat(RegExp["$1"]);
isMinSafari1=fAppleWebKitVersion>=85;
isMinSafari1_2=fAppleWebKitVersion>=124;
}elseif(isKonq){
varreKonq=newRegExp("Konqueror\\/(\\d+(?:\\.\\d+(?:\\.\\d)?)?)");
reKonq.test(sUserAgent);
isMinKonq2_2=compareVersions(RegExp["$1"],"2.2")>=0;
isMinKonq3=compareVersions(RegExp["$1"],"3.0")>=0;
isMinKonq3_1=compareVersions(RegExp["$1"],"3.1")>=0;
isMinKonq3_2=compareVersions(RegExp["$1"],"3.2")>=0;
}
}
varisIE=sUserAgent.indexOf("compatible")>-1
&sUserAgent.indexOf("MSIE")>-1
&!isOpera;
varisMinIE4=isMinIE5=isMinIE5_5=isMinIE6=isMinIE7=false;
if(isIE){
varreIE=newRegExp("MSIE(\\d+\\.\\d+);");
reIE.test(sUserAgent);
varfIEVersion=parseFloat(RegExp["$1"]);
isMinIE4=fIEVersion>=4;
isMinIE5=fIEVersion>=5;
isMinIE5_5=fIEVersion>=5.5;
isMinIE6=fIEVersion>=6.0;
isMinIE7=fIEVersion>=7.0;
}
varisMoz=sUserAgent.indexOf("Gecko")>-1
&!isKHTML;
varisMinMoz1=sMinMoz1_4=isMinMoz1_5=isMinMozl_5_1=false;
if(isMoz){
varreMoz=newRegExp("rv\\d+\\.\\d+(?:\\.\\d+)?)");
reMoz.test(sUserAgent);
isMinMoz1=compareVersions(RegExp["$1"],"1.0")>=0;
isMinMoz1_4=compareVersions(RegExp["$1"],"1.4")>=0;
isMinMoz1_5=compareVersions(RegExp["$1"],"1.5")>=0;
isMinMoz2=compareVersions(RegExp["$1"],"1.8")>=0;
}
varisNS4=!isIE&!isOpera&&!isMoz&&!isKHTML
&(sUserAgent.indexOf("Mozilla")==0)
&(navigator.appName=="Netscape")
&(fAppVersion>=4.0&&fAppVersion<5.0);
varisMinNS4=isMinNS4_5=isMinNS4_7=isMinNS4_8=false;
if(isNS4){
isMinNS4=true;
isMinNS4_5=fAppVersion>=4.5;
isMinNS4_7=fAppVersion>=4.7;
isMinNS4_8=fAppVersion>=4.8;
}
varisWin=(navigator.platform=="Win32")||(navigator.platform=="Windows");
varisMac=(navigator.platform=="Mac68K")||(navigator.platform=="MacPPC")
||(navigator.platform=="Macintosh");
varisUnix=(navigator.platform=="X11")&!isWin&&!isMac;
varisWin95=isWin98=isWinNT4=isWin2K=isWinME=isWinXP=isWin03=false;
varisMac68K=isMacPPC=false;
varisSunOS=isMinSunOS4=isMinSunOS5=isMinSunOS5_5=false;
if(isWin){
isWin95=sUserAgent.indexOf("Win95")>-1
||sUserAgent.indexOf("Windows95")>-1;
isWin98=sUserAgent.indexOf("Win98")>-1
||sUserAgent.indexOf("Windows98")>-1;
isWinME=sUserAgent.indexOf("Win9x4.90")>-1
||sUserAgent.indexOf("WindowsME")>-1;
isWin2K=sUserAgent.indexOf("WindowsNT5.0")>-1
||sUserAgent.indexOf("Windows2000")>-1;
isWinXP=sUserAgent.indexOf("WindowsNT5.1")>-1
||sUserAgent.indexOf("WindowsXP")>-1;
isWinNT4=sUserAgent.indexOf("WinNT")>-1
||sUserAgent.indexOf("WindowsNT")>-1
||sUserAgent.indexOf("WinNT4.0")>-1
||sUserAgent.indexOf("WindowsNT4.0")>-1
&(!isWinME&&!isWin2K&&!isWinXP);
isWin03=sUserAgent.intexOf("WindowsNT5.2")>-1
}
if(isMac){
isMac68K=sUserAgent.indexOf("Mac_68000")>-1
||sUserAgent.indexOf("68K")>-1;
isMacPPC=sUserAgent.indexOf("Mac_PowerPC")>-1
||sUserAgent.indexOf("PC")>-1;
}
if(isUnix){
isSunOS=sUserAgent.indexOf("SunOS")>-1;
if(isSunOS){
varreSunOS=newRegExp("SunOS(\\d+\\.\\d+(?:\\.\\d+)?)");
reSunOS.test(sUserAgent);
isMinSunOS4=compareVersions(RegExp["$1"],"4.0")>=0;
isMinSunOS5=compareVersions(RegExp["$1"],"5.0")>=0;
isMinSunOS5_5=compareVersions(RegExp["$1"],"5.5")>=0;
}
}