if(isSafari=navigator.userAgent.indexOf(”Opera”)>0) {}判断是否Opera浏览器
var sUserAgent = navigator.userAgent.toLowerCase()
var bIsIpad = sUserAgent .match(/ipad/i) == "ipad" //判断是否为 ipad
var bIsIphoneOs = sUserAgent .match(/iphone os/i) == "iphone os"//判断是否为iphone os
var bIsMidp = sUserAgent .match(/midp/i) == "midp" //判断是否为 midp
var bIsUc = sUserAgent .match(/ucweb/i) == "ucweb" //判断是否为 ucweb
var bIsAndroid = sUserAgent .match(/android/i) == "android" //判断是否为 android
var bIsCE = sUserAgent .match(/windows ce/i) == "windows ce" //判断是否为 windows ce
var bIsWM = sUserAgent .match(/windows mobile/i) == "windows mobile"
//判断是否为windows mobile
判断类型:
if navigator.userAgent.indexOf(”MSIE”)>0){ //是否是IE浏览器 :navigator.userAgent是描述用户代理信息。ie11已经不支持了,ie11不在包含MSIE字段
if navigator.userAgent.indexOf(”MSIE 6.0″)>0){ //IE6.0
if navigator.userAgent.indexOf(”MSIE 7.0″)>0){//IE7.0
if navigator.userAgent.indexOf(”MSIE 8.0″)>0){//IE8.0
最短的IE浏览器判断代码
利用了IE与标准浏览器在处理数组的toString方法的差异.对于标准游览器,如果数组里面最后一个字符为逗号,JS引擎会自动剔除它.
var ie = !-[1,]
alert(ie)
jquery判断浏览器类型和浏览器版本号的方法
$(document).ready(function(){
varbrow=$.browser
varbInfo=""
if(brow.msie){bInfo="MicrosoftInternetExplorer"+brow.version}
if(brow.mozilla){bInfo="MozillaFirefox"+brow.version}
if(brow.safari){bInfo="AppleSafari"+brow.version}
if(brow.opera){bInfo="Opera"+brow.version}
alert(bInfo)
})
IE6~IE10的浏览器特征明显,存在msie字符串,而IE11去掉了msie字符串,可以通过rv后面的版本号识别IE11,具体方法如下:
function IETester(userAgent){var UA = userAgent || navigator.userAgent
if(/msie/i.test(UA)){
return UA.match(/msie (\d+\.\d+)/i)[1]
}else if(~UA.toLowerCase().indexOf('trident') && ~UA.indexOf('rv')){
return UA.match(/rv:(\d+\.\d+)/)[1]
}
return false
}
IETester()//不传参数返回当前IE版本,如果不是IE内核浏览器,返回false
IETester('Mozilla/5.0 (Windows NT 6.3 WOW64 Trident/7.0 rv:11.0) like Gecko')//传userAgent字符串,用来判断其他IE浏览器的版本,该示例返回11.0