使用jQuery可以很方便地检测用户浏览器及版本信息,下面是示例代码及详细说明:
1. 检测浏览器名称
$(function () {
var browserName = getBrowserName();
alert(browserName);
});
function getBrowserName() {
var userAgent = navigator.userAgent.toLowerCase();
var name = '';
if (userAgent.indexOf("msie") > -1) {
name = "Internet Explorer";
} else if (userAgent.indexOf("firefox") > -1) {
name = "Firefox";
} else if (userAgent.indexOf("opera") > -1) {
name = "Opera";
} else if (userAgent.indexOf("chrome") > -1) {
name = "Chrome";
} else if (userAgent.indexOf("safari") > -1) {
name = "Safari";
}
return name;
}
以上代码中,通过检测navigator.userAgent
属性中浏览器名称的关键词,来判断用户使用的浏览器名称并返回。其中,通过indexOf()
方法查找关键词是否存在于navigator.userAgent
字符串中,如果存在即代表用户正在使用该浏览器。这里的代码逻辑是,首先检测IE浏览器,如果存在msie
关键字,那么用户正在使用IE浏览器;否则,再逐一检测其他浏览器。最终返回的变量name
就是用户正在使用的浏览器名称,可以在后续操作中使用。
2. 检测浏览器版本
$(function () {
var browserVersion = getBrowserVersion();
alert(browserVersion);
});
function getBrowserVersion() {
var userAgent = navigator.userAgent.toLowerCase();
var version = '';
if (userAgent.indexOf("msie") > -1) {
var regExp = /msie ([\d]+)/;
var matchResult = regExp.exec(userAgent);
if (matchResult !== null) {
version = matchResult[1];
}
} else if (userAgent.indexOf("firefox") > -1) {
var regExp = /firefox\/([\d]+)/;
var matchResult = regExp.exec(userAgent);
if (matchResult !== null) {
version = matchResult[1];
}
} else if (userAgent.indexOf("opera") > -1) {
var regExp = /opera.([\d]+)/;
var matchResult = regExp.exec(userAgent);
if (matchResult !== null) {
version = matchResult[1];
}
} else if (userAgent.indexOf("chrome") > -1) {
var regExp = /chrome\/([\d]+)/;
var matchResult = regExp.exec(userAgent);
if (matchResult !== null) {
version = matchResult[1];
}
} else if (userAgent.indexOf("safari") > -1) {
var regExp = /version\/([\d]+)/;
var matchResult = regExp.exec(userAgent);
if (matchResult !== null) {
version = matchResult[1];
}
}
return version;
}
以上代码中,同样是通过检测navigator.userAgent
属性中浏览器信息来判断用户使用的浏览器版本。不同的是,针对每个浏览器需要匹配不同的版本号信息,所以使用正则表达式和exec()
方法来进行匹配,具体细节可以看代码中的注释。
注意:以上示例代码只能判断当前浏览器的名称及版本,对于浏览器的操作系统和设备信息,是需要另外的代码进行判断的。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:用jQuery实现检测浏览器及版本的脚本代码 - Python技术站