checkBrowser()函数主要检测了三种浏览器(IE, firefox, chrome),其它的浏览器的检测有兴趣的朋友可以自行添加检测代码!
HTML部分代码: (页面加载时执行检测函数)
<body onload="checkBrowser()"> <p id="userAgent"></p> <p id="browser"></p> </body>
javascript部分代码:
检测的原理主要根据 浏览器的用户代理报头nanigator.userAgent中提取到浏览器和类型及版本信息,利用正则表达式可以很容易的满足我们的需求,如对正则表达式不熟悉,可参照此文(正则表达式)
function check(reg) { var ug = navigator.userAgent.toLowerCase(); return reg.test(ug); } function checkBrowser() { var ug = navigator.userAgent.toLowerCase(); var userAgent = document.getElementById("userAgent"); userAgent.innerHTML = "浏览器的用户代理报头:" + ug; var browserType = ""; var ver = ""; //检测IE及版本 var IE = ug.match(/msies*d.d/); //提取浏览器类型及版本信息,注match()方法返回的是数组而不是字符串 var isIE = check(/msie/); if(isIE) { browserType = "Internet Explorer"; ver = IE.join(" ").match(/[0-9]/g).join("."); //先用join()方法转化为字符串,然后用match()方法匹配到版本信息,再用join()方法转化为字符串 } //检测chrome及版本 var chrome = ug.match(/chrome/d.d/gi); var isChrome = check(/chrome/); if(isChrome) { browserType = "Chrome"; ver = chrome.join(" ").match(/[0-9]/g).join("."); } //检测firefox及版本 var firefox = ug.match(/firefox/d.d/gi); var isFirefox = check(/firefox/); if(isFirefox) { browserType = "Firefox"; ver = firefox.join(" ").match(/[0-9]/g).join("."); } var browser = document.getElementById("browser"); browser.innerHTML = "您正在使用的浏览器为:" + browserType + "<span style='padding-left:15px;'>版本为:</span>" + ver; }
PS:各浏览器的用户代理信息如下:
IE:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; BOIE9;ZHCN);
firefox:Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gecko/20100101 Firefox/4.0;
chrome:Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.98 Safari/534.13
© 版权声明
本文刊载的所有内容,包括文字、图片、音频、视频、软件、程序、以及网页版式设计等部门来源于互联网,版权均归原作者所有!本网站提供的内容服务于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
联系信息:邮箱aoxolcom@163.com或见网站底部。
联系信息:邮箱aoxolcom@163.com或见网站底部。
THE END
请登录后发表评论
注册
社交帐号登录