您的位置:首页 > 其它

简易方法判断浏览器的类型和版本

2012-12-08 16:17 267 查看
如何判断浏览器的类型和版本? -- 使用JavaScript的内置对象 navigator 的属性userAgent的值来判断(navigator.userAgent)。

navigator是javascript的内置对象,通常用于检测浏览器与操作系统的版本。 常用的属性有

appCodeName -- 浏览器代码名的字符串表示
appName -- 官方浏览器名的字符串表示
appVersion -- 浏览器版本信息的字符串表示
cookieEnabled -- 如果启用cookie返回true,否则返回false
javaEnabled -- 如果启用java返回true,否则返回false
platform -- 浏览器所在计算机平台的字符串表示
plugins -- 安装在浏览器中的插件数组
taintEnabled -- 如果启用了数据污点返回true,否则返回false
userAgent -- 用户代理头的字符串表示(就是包含浏览器版本信息等的字符串)

js正则表达式

var str = "123123";
var reg = /123/;
alert(reg.test(str));
以上一段检测 str 这一个字符串中是否包含123这样的字串。

进入正题,直接上代码(ExtJs使用的就是这种方式判断的)

<script language="javascript">
var ua = navigator.userAgent.toLowerCase();
function check(r){
return r.test(ua);
}
/**
* return IE,IE6,IE7,IE8,IE9,Chrome,Firefox,Opera,WebKit,Safari,Others
*/
function getBrowserName()
{
var browserName;
var isOpera = check(/opera/);
var isChrome = check(/chrome/);
var isFirefox = check(/firefox/);
var isWebKit = check(/webkit/);
var isSafari = !isChrome && check(/safari/);
var isIE = !isOpera && check(/msie/);
var isIE7 = isIE && check(/msie 7/);
var isIE8 = isIE && check(/msie 8/);
if(isIE8)
{
browserName = "IE8";
}else if(isIE7)
{
browserName = "IE7";
}else if(isIE)
{
browserName = "IE";
}else if(isChrome)
{
browserName = "Chrome";
}else if(isFirefox)
{
browserName = "Firefox";
}else if(isOpera)
{
browserName = "Opera";
}else if(isWebKit)
{
browserName = "WebKit";
}else if(isSafari)
{
browserName = "Safari";
}else
{
browserName = "Others";
}
return browserName;
}

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: