JS判断IE浏览器和其他浏览器
在浏览器的
BOM
中,有一个navigator
对象,该对象主要用于记录当前浏览器信息
- navigator.appName:获取当前浏览器名称
- navigator.appVersion:获取当前浏览器的平台和版本信息
IE浏览器名称:“Microsoft Internet Explorer”
谷歌浏览器名称:“Netscape”(网景)
IE浏览器:
谷歌浏览器:
代码如下:
window.onload = function() {
var browser_name = navigator.appName, //获取当前浏览器的名称
browser_version = navigator.appVersion, //获取当前浏览器的平台和版本信息
version_arr = browser_version.split(";"), //将平台版本信息按照;切割成数组
version = version_arr[1].replace(/\s/g, ""); //取上一步数组下标为1的元素,去空格
// console.log(browser_name);
// console.log(browser_version);
// console.log(version_arr);
// console.log(version);
if (browser_name == "Microsoft Internet Explorer") { //如果浏览器名称为IE
//当前IE版本满足其中任意一个执行以下操作
alert(“为了您更好的体验,请下载最新的浏览器”);
}
};
注意:上面代码只针对IE10
及以下,对于IE11
,navigator.appName
的名字也变成了"Netscape"
经过测试还有一种方法可以区分IE浏览器(包括IE11)
代码:
if (!!window.ActiveXObject || "ActiveXObject" in window){
alert('浏览器版本过低或不支持,请下载浏览器!');
}
还有一种方法就是利用条件注释,主要为了解决兼容性,在这里不做详细了解