JS判断浏览器类型,获得浏览器版本号
2011-05-05 15:42
746 查看
在WEB开发中,浏览器兼容问题往往弄得我们焦头烂额。这篇文章主要是通过使用JS封装一个方法来获得当前客户端的浏览器类型和浏览器版本号。大家都知道,我们往往是通过分析浏览器的uerAgent来判断,可是uerAgent属性又臭又长,我们又该如何从中抽丝剥茧,获得每个浏览器的所独有的特性呢,首先,我们来分析下各个浏览器的uerAgent字符串:(并不会写完全,只是写该字符串中比较重要的一部分)
IE(MSIE后面是版本号)
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)
FireFox(Firefox/后面是版本号)
Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12
Opera(Opera后面是版本号)
Opera/9.27 (Windows NT 5.2; U; zh-cn)
Opera/8.0 (Macintosh; PPC Mac OS X; U; en)
Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0
Safri(Version后面是版本号)
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1
Safari/525.13
Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0
Mobile/4A93 Safari/419.3
chrome(chrome后面是版本号)
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13
比较有趣的是,chrome的userAgent字符串中还包含了safari的特性。
下面,就可已根据以上的这些特征来构造我们的对象:
关键字的值或者为假,或者为当前浏览器的版本号。因此我们可以通过这个对象进行浏览器的检测。
IE(MSIE后面是版本号)
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)
FireFox(Firefox/后面是版本号)
Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12
Opera(Opera后面是版本号)
Opera/9.27 (Windows NT 5.2; U; zh-cn)
Opera/8.0 (Macintosh; PPC Mac OS X; U; en)
Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0
Safri(Version后面是版本号)
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1
Safari/525.13
Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0
Mobile/4A93 Safari/419.3
chrome(chrome后面是版本号)
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13
比较有趣的是,chrome的userAgent字符串中还包含了safari的特性。
下面,就可已根据以上的这些特征来构造我们的对象:
var ua=navigator.userAgent.toLowerCase(); var s=null; var browser={ msie:(s=ua.match(/msie/s*([/d/.]+)/))?s[1]:false, firefox:(s=ua.match(/firefox//([/d/.]+)/))?s[1]:false, chrome:(s=ua.match(/chrome//([/d/.]+)/))?s[1]:false, opera:(s=ua.match(/opera.([/d/.]+)/))?s[1]:false, safari:(s=ua.match(/varsion//([/d/.]+).*safari/))?s[1]:false };
关键字的值或者为假,或者为当前浏览器的版本号。因此我们可以通过这个对象进行浏览器的检测。
相关文章推荐
- js判断浏览器的类型和获得浏览器的版本
- js判断浏览器类型及版本
- [转]JS根据useAgent来判断edge, ie, firefox, chrome, opera, safari 等浏览器的类型及版本
- js判断浏览器类型及版本号
- 通过JS判断浏览器类型,详细区分IE各版本浏览器
- JS判断浏览器类型及版本
- js判断浏览器类型及版本
- JS判断浏览器类型及版本
- js判断浏览器版本和类型
- 【转载】JS 获得浏览器类型和版本
- JS判断浏览器类型及版本
- JS判断各浏览器类型及版本
- JS判断浏览器类型与版本的实现代码
- JS如何判断浏览器类型和详细区分IE各版本浏览器
- JS判断浏览器类型与版本
- JS判断浏览器类型与版本
- js 判断浏览器类型及版本
- JS判断浏览器类型与版本
- JS判断浏览器类型与版本