个人认为:在判断浏览器时用if(){..} else if(){....}可读性要高些,采用赋值方式,代码看起要简洁些,但可读性方面可能稍差些.
/*
**isVersionNumOrType:true(获取浏览器的类型+版本号) false(获取浏览器的类型)
/*
getBrowseInfo:function(isVerNumOrType){
var bVersionNum = "";
var ua = navigator.userAgent.toLowerCase();
//通过判断每种浏览器的特定属性在效率上会高些 firefox新版本14.0.0.1使用getBoxObjectFor 来判断无效,所以使用IndexOf()来获取firefox类型
if(window.ActiveXObject ){
bVersionNum = "IE "+ua.match(/msie ([\d.]+)/)[1];
}
if(ua.indexOf('firefox')>-1 ){
bVersionNum = "Firefox "+ua.match(/firefox\/([\d.]+)/)[1] ; }
if(window.MessageEvent && !document.getBoxObjectFor && ua.indexOf('chrome')>-1 ){
bVersionNum = "Chrome "+ua.match(/chrome\/([\d.]+)/)[1] ;
}
if(window.opera ){
bVersionNum = "Opera "+ua.match(/opera.([\d.]+)/)[1] ;
}
if(window.openDatabase ){
bVersionNum = "Safari "+ua.match(/version\/([\d.]+)/)[1] ;
}
return isVersionNumOrType ? bVersionNum:bVersionNum.replace(/([\d.]+)/,"");
}
/*
**isVersionNumOrType:true(获取浏览器的类型+版本号) false(获取浏览器的类型)
/*
getBrowseInfo:function(isVerNumOrType){
var bVersionNum = "";
var ua = navigator.userAgent.toLowerCase();
//通过判断每种浏览器的特定属性在效率上会高些 firefox新版本14.0.0.1使用getBoxObjectFor 来判断无效,所以使用IndexOf()来获取firefox类型
window.ActiveXObject ? bVersionNum = "IE "+ua.match(/msie ([\d.]+)/)[1] :
ua.indexOf('firefox')>-1 ? bVersionNum = "Firefox "+ua.match(/firefox\/([\d.]+)/)[1] :
window.MessageEvent && !document.getBoxObjectFor && ua.indexOf('chrome')>-1 ? bVersionNum = "Chrome "+ua.match(/chrome\/([\d.]+)/)[1] :
window.opera ? bVersionNum = "Opera "+ua.match(/opera.([\d.]+)/)[1] :
window.openDatabase ? bVersionNum = "Safari "+ua.match(/version\/([\d.]+)/)[1] : 0;
return isVersionNumOrType ? bVersionNum:bVersionNum.replace(/([\d.]+)/,"");
}
/*
**isVersionNumOrType:true(获取浏览器的类型+版本号) false(获取浏览器的类型)
/*
getBrowseInfo:function(isVerNumOrType){
var bVersionNum = "";
var ua = navigator.userAgent.toLowerCase();
//通过判断每种浏览器的特定属性在效率上会高些 firefox新版本14.0.0.1使用getBoxObjectFor 来判断无效,所以使用IndexOf()来获取firefox类型
if(window.ActiveXObject ){
bVersionNum = "IE "+ua.match(/msie ([\d.]+)/)[1];
}
if(ua.indexOf('firefox')>-1 ){
bVersionNum = "Firefox "+ua.match(/firefox\/([\d.]+)/)[1] ; }
if(window.MessageEvent && !document.getBoxObjectFor && ua.indexOf('chrome')>-1 ){
bVersionNum = "Chrome "+ua.match(/chrome\/([\d.]+)/)[1] ;
}
if(window.opera ){
bVersionNum = "Opera "+ua.match(/opera.([\d.]+)/)[1] ;
}
if(window.openDatabase ){
bVersionNum = "Safari "+ua.match(/version\/([\d.]+)/)[1] ;
}
return isVersionNumOrType ? bVersionNum:bVersionNum.replace(/([\d.]+)/,"");
}
/*
**isVersionNumOrType:true(获取浏览器的类型+版本号) false(获取浏览器的类型)
/*
getBrowseInfo:function(isVerNumOrType){
var bVersionNum = "";
var ua = navigator.userAgent.toLowerCase();
//通过判断每种浏览器的特定属性在效率上会高些 firefox新版本14.0.0.1使用getBoxObjectFor 来判断无效,所以使用IndexOf()来获取firefox类型
window.ActiveXObject ? bVersionNum = "IE "+ua.match(/msie ([\d.]+)/)[1] :
ua.indexOf('firefox')>-1 ? bVersionNum = "Firefox "+ua.match(/firefox\/([\d.]+)/)[1] :
window.MessageEvent && !document.getBoxObjectFor && ua.indexOf('chrome')>-1 ? bVersionNum = "Chrome "+ua.match(/chrome\/([\d.]+)/)[1] :
window.opera ? bVersionNum = "Opera "+ua.match(/opera.([\d.]+)/)[1] :
window.openDatabase ? bVersionNum = "Safari "+ua.match(/version\/([\d.]+)/)[1] : 0;
return isVersionNumOrType ? bVersionNum:bVersionNum.replace(/([\d.]+)/,"");
}