JS判断各浏览器类型及版本
2015-11-18 10:44
573 查看
昨天写了一个滑动块的效果,今天发现原来在火狐上不兼容,后来查资料,发现伪元素 :after, :before在火狐的高版本中才能显示,于是研究了下如何判断浏览器的类型及版本信息,鉴于IE11版本开始没有了MSIE字段,所以自己又作了部分更改。
并且在关键步骤中,详细得列出了对应的log,有助于理解代码。
昨天写得滑块在火狐中的问题可能需要深究下:after和:before,研究之后会再作说明,一点一点深入吧。
在IE中的效果,真心是丑得不行,好吧,既然用了html5,我就暂且不管IE了。
并且在关键步骤中,详细得列出了对应的log,有助于理解代码。
昨天写得滑块在火狐中的问题可能需要深究下:after和:before,研究之后会再作说明,一点一点深入吧。
在IE中的效果,真心是丑得不行,好吧,既然用了html5,我就暂且不管IE了。
[code]var browser = getBrowserInfo() ;//浏览器信息 //alert(browser);//IE 11.0 //IE11以下: MSIE 10.0、MSIE9.0等 //chrome:chrome/41.0.2272.89 [返回的是个数组] //firefox: firefox/42.0 [返回的是个数组] var verinfo = (browser+"").replace(/[^0-9.]/ig,""); //浏览器版本 //alert(verinfo);//11.0 //IE浏览器: 11.0/10.0/9.0 //chrome浏览器:41.0.2272.89 //Firefox浏览器: 42.0 function getBrowserInfo() { var agent = navigator.userAgent.toLowerCase() ; //console.log(agent); //agent chrome : mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, like gecko) chrome/41.0.2272.89 safari/537.36 //agent firefox : mozilla/5.0 (windows nt 6.1; wow64; rv:42.0) gecko/20100101 firefox/42.0 //agent IE11: mozilla/5.0 (windows nt 6.1; wow64; trident/7.0; slcc2; .net clr 2.0.50727; .net clr 3.5.30729; //接上.net clr 3.0.30729; media center pc 6.0;infopath.2; .net4.0c; .net4.0e; rv:11.0) like gecko (可以看出IE11中不包括MSIE字段) //agent IE10: mozilla/5.0(compatible; msie 10.0; windows nt 6.1; wow64; trident/6.0) var regStr_ie = /msie [\d.]+;/gi ; var regStr_ff = /firefox\/[\d.]+/gi var regStr_chrome = /chrome\/[\d.]+/gi ; var regStr_saf = /safari\/[\d.]+/gi ; //IE11以下 if(agent.indexOf("msie") > 0) { return agent.match(regStr_ie) ; } //IE11版本中不包括MSIE字段 if(agent.indexOf("trident") > 0&&agent.indexOf("rv") > 0){ return "IE " + agent.match(/rv:(\d+\.\d+)/) [1]; } //firefox if(agent.indexOf("firefox") > 0) { return agent.match(regStr_ff) ; } //Chrome if(agent.indexOf("chrome") > 0) { return agent.match(regStr_chrome) ; } //Safari if(agent.indexOf("safari") > 0 && agent.indexOf("chrome") < 0) { return agent.match(regStr_saf) ; } }
相关文章推荐
- 每天一篇javascript学习小结(String对象)
- $.getJSON与$.ajax
- javascript中如何判断一个新创建对象是无属性的空对象?
- 跟我学习javascript的执行上下文
- 小工具-生成json文件(py2.7)
- js模块定义——支持CMD&AMD&直接加载
- JSF 国际化中出现的问题
- json put方法,accumulate方法,element方法
- 跟我学习JScript的Bug与内存管理
- js方法智能给url传参数
- JavaScript中setInterval用法
- JavaScript三大组成部分
- 跟我学习javascript的循环
- ThinkJS 项目用 WebStorm 来设置断点与调试
- javascript面向对象程序设计
- 监听浏览器关闭按钮点击事件 -- 使用JS
- js闭包问题
- What does it mean by rendering of page in JSF
- javascript学习笔记
- JS 有序键值Map对的实现