参考:js检测是什么浏览器并输出版本号 https://www.jianshu.com/p/8e07990790b4
主要是利用window.navigator.userAgent来获取浏览器的相关信息
window对象表示浏览器中打开的窗口(有着自己对应的属性:window.document/window.innerWidth,和方法:alert()/close())
navigator对象包含有关浏览器的信息,userAgent是其对象属性返回客户机发送服务器的user-agent头部的值
附上代码:
<script>
function getExplorerInfo() {
var explorer = window.navigator.userAgent.toLowerCase();
//ie
if (explorer.indexOf("msie") >= 0) {
var ver = explorer.match(/msie ([\d.]+)/)[1];
return { type: "IE", version: ver };
}
//firefox
else if (explorer.indexOf("firefox") >= 0) {
var ver = explorer.match(/firefox\/([\d.]+)/)[1];
return { type: "Firefox", version: ver };
}
//Chrome
else if (explorer.indexOf("chrome") >= 0) {
var ver = explorer.match(/chrome\/([\d.]+)/)[1];
return { type: "Chrome", version: ver };
}
//Opera
else if (explorer.indexOf("opera") >= 0) {
var ver = explorer.match(/opera.([\d.]+)/)[1];
return { type: "Opera", version: ver };
}
//Safari
else if (explorer.indexOf("safari") >= 0) {
var ver = explorer.match(/version\/([\d.]+)/)[1];
return { type: "Safari", version: ver };
}
}
alert("浏览器:" + getExplorerInfo().type + "\n 版本:" + getExplorerInfo().version);
</script>
检测发现IE的浏览器,明明装的是11版本,为啥报出来是7呢?
需要在网页的头部加上meta信息,否则默认IE7 show出网页(meta标签提供关于HTML文档的元数据)
参考:https://www.runoob.com/w3cnote/meta.html
主要分为一下几个方面(必选属性:content,可选的:http-equiv,name,scheme)
SEO优化:页面关键词,页面描述,搜索引擎索引方式,页面重定向和刷新,其它
移动设备:viewport,webApp全屏模式,添加到主屏后的标题,忽略数字自动识别为电话号码,忽略识别邮箱,添加App广告条,其它
网页相关:申明编码,优先使用IE最新版本和Chrome,浏览器内核控制等
所以在网页文件的开头加上: <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 即会选择当前的最新IE浏览器
但是如果你的浏览器是IE11上面的代码也无法识别,因为IE11中不包含msie关键字,则在上面的代码中再增加一条判断即可。
else if(explorer.indexOf("trident") >=0 && explorer.indexOf("rv:11.0") >= 0){
return { type: "IE", version: '11' };
}