1、navigator 属性
浏览器中可以调用navigator 属性和说明如下表,
属性 | 说明 |
appCodeName | 此属性是一个字符串,包含浏览器的代码名, Netscape用于Netscape, Microsoft Internet Explorer用于Internet Explorer。 |
appVersion | 此属性是一个字符串, 包含浏览器的版本以及其他有用信息, 如语言和兼容性。 |
language | 此属性包含浏览器使用的语言的字母缩写。 |
mimTypes[] | 此属性是一个包含客户端支持的所有MIME类型的数组。 |
platform[] | 此属性是一个字符串,包含浏览器为之编译的平台。 32位Windows操作系统的“Win32”。 |
plugins[] | 此属性是一个包含已安装在客户端上的所有插件的数组。 |
userAgent[] | 此属性是一个字符串,包含浏览器的代码名和版本。 此值被发送到初始服务器以标识客户端。 |
2、navigator 方法
浏览器中可以调用navigator
方法和说明如下表,
方法 | 说明 |
javaEnabled() | 此方法确定客户端是否启用了JavaScript。 如果JavaScript被启用, 这个方法返回 |
plugings.refresh | 可以刷新新安装的插件。 |
3、浏览器判断
JavaScript可以通过navigator.userAgent找出浏览器的名称,然后针对不同浏览器提供相应的HTML页面。
function IEVersion() {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
if(isIE) {
var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion = parseFloat(RegExp["$1"]);
if(fIEVersion == 7) {
return IE7;
} else if(fIEVersion == 8) {
return IE8;
} else if(fIEVersion == 9) {
return IE9;
} else if(fIEVersion == 10) {
return IE10;
} else {
return IE6;//IE版本<=7
}
} else if(isEdge) {
return 'edge';//edge
} else if(isIE11) {
return IE11; //IE11
}else{
return -1;//不是ie浏览器
}
}
function myBrowser() {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
var ieVersion= IEVersion(); //判断是否IE浏览器
var isEdge = userAgent.indexOf("Edge") > -1; //判断是否IE的Edge浏览器
var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
var isSafari = userAgent.indexOf("Safari") > -1
&& userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器
var isChrome = userAgent.indexOf("Chrome") > -1
&& userAgent.indexOf("Safari") > -1; //判断Chrome浏览器
if (ieVersion !="-1") {
return ieVersion;
}
if (isOpera) {
return "Opera";
}
if (isEdge) {
return "Edge";
}
if (isFF) {
return "FF";
}
if (isSafari) {
return "Safari";
}
if (isChrome) {
return "Chrome";
}
}
console.log(myBrowser());