JS 中如何判断出 各个IE浏览器的版本

JavaScript030

JS 中如何判断出 各个IE浏览器的版本,第1张

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

function getExplorerInfo() {

var explorer = window.navigator.userAgent.toLowerCase()

//ie

if (explorer.indexOf("msie") >= 0) {

var ver=explorer.match(/msie ([\d.]+)/)[1]

return {type:"IE",version:ver}

}

//firefox

else if (explorer.indexOf("firefox") >= 0) {

var ver=explorer.match(/firefox\/([\d.]+)/)[1]

return {type:"Firefox",version:ver}

}

//Chrome

else if(explorer.indexOf("chrome") >= 0){

var ver=explorer.match(/chrome\/([\d.]+)/)[1]

return {type:"Chrome",version:ver}

}

//Opera

else if(explorer.indexOf("opera") >= 0){

var ver=explorer.match(/opera.([\d.]+)/)[1]

return {type:"Opera",version:ver}

}

//Safari

else if(explorer.indexOf("Safari") >= 0){

var ver=explorer.match(/version\/([\d.]+)/)[1]

return {type:"Safari",version:ver}

}

}

//弹出类型和版本号

alert("type:"+getExplorerInfo().type+"\nversion:"+getExplorerInfo().version)

if navigator.userAgent.indexOf(”MSIE”)>0) {} //判断是否IE浏览器if(isFirefox=navigator.userAgent.indexOf(”Firefox”)>0){ }判断是否火狐浏览器if(isSafari=navigator.userAgent.indexOf(”Safari”)>0) {}判断是否Safari浏览器

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)

})