JavaScript判断IE版本型号

下面通过代码给大家讲解下,具体请看下文:

IE浏览器与非IE浏览器的区别是IE浏览器支持ActiveXObject,但是非IE浏览器不支持ActiveXObject。在IE11浏览器还没出现的时候我们判断IE和非IE经常是这么写的

代码如下:

function isIe(){
     return window.ActiveXObject ? true : false;
 }

但是在IE11中上面判断的返回的是false,我自己在IE11测试了下如下代码:

代码如下:

alert(window.ActiveXObject);
 alert(typeof window.ActiveXObject);

这是为什么呢?明明ActiveXObject是存在的,怎么就typeof的结果确实undefined。哪位知道结果的告诉我这是为什么呢?为神马?

微软上的官网说出了IE11的ActiveXObject的不同。

代码如下:

alert("ActiveXObject" in window)//在ie11下返回的是true

下面就直接给出兼容IE11判断IE与非IE浏览器的方法。

代码如下:

function isIe(){
    return ("ActiveXObject" in window);
 }

判断IE6浏览器

从IE7开始IE是支持XMLHttpRequest对象的,唯独IE6是不支持的。根据这个特性和前面判断IE的函数isIe()我们就知道怎么判断IE6了吧。判断方法如下:

代码如下:

function isIe6() {
    // ie6是不支持window.XMLHttpRequest的
    return isIe() && !window.XMLHttpRequest;
 }

判断IE7浏览器

因为从IE8开始是支持文档模式的,它支持document.documentMode。IE7是不支持的,但是IE7是支持XMLHttpRequest对象的。判断方法如下:

代码如下:

function isIe7() {
     //只有IE8+才支持document.documentMode
     return isIe() && window.XMLHttpRequest && !document.documentMode;
 }

判断IE8浏览器

在从IE9开始,微软慢慢的靠近标准,我们把IE678称为非标准浏览器,IE9+与其他如chrome,firefox浏览器称为标准浏览器。两者的区别其中有一个是alert(-[1,]);//在IE678中打印的是NaN,但是在标准浏览器打印的是-1

那么我们就可以根据上面的区别来判断是IE8浏览器。方法如下:

function isIe8(){
  // alert(!-[1,])//->IE678返回NaN 所以!NaN为true 标准浏览器返回-1 所以!-1为false
  return isIe() &&!-[1,]&&document.documentMode;
 }

判断IE9、IE10、IE11浏览器

从IE8浏览器是支持JSON内置对象的,从IE10开始支持js的严格模式。IE9+下alert(!-[1,])返回的是false,IE9+是支持addEventListener的,但是IE11浏览器中是不支持原来IE中独有的事件绑定attachEvent。根据这些区别我们就能区分出IE9、IE10、IE11浏览器了。

判断其他浏览器

//检测函数
 var check = function(r) {
   return r.test(navigator.userAgent.toLowerCase());
 };
 var statics = {
   /**
   * 是否为webkit内核的浏览器
   */
   isWebkit : function() {
     return check(/webkit/);
   },
   /**
   * 是否为火狐浏览器
   */
   isFirefox : function() {
     return check(/firefox/);
   },
   /**
   * 是否为谷歌浏览器
   */
   isChrome : function() {
     return !statics.isOpera() && check(/chrome/);
   },
   /**
   * 是否为Opera浏览器
   */   isOpera : function() {
     return check(/opr/);
   },
   /**
   * 检测是否为Safari浏览器
   */
   isSafari : function() {
   // google chrome浏览器中也包含了safari
     return !statics.isChrome() && !statics.isOpera() && check(/safari/)
   }
 };

以上就是本文的全部介绍,希望可以帮助到大家。

(0)

相关推荐

  • js判断ie版本号的简单实现代码

    jQuery 2.0 去除了对浏览器版本号的判断(它推荐特性检测),这里是一个老外写的原生判断方法,这段代码着实巧妙!既简介.有向后兼容!一般做法都是:正则搜索 USER_AGENT :但因为历史原因, USER_AGENT 一直都不准确,而且被各大厂商改的乱七八糟.:比如: IE10 : Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0) IE11 : Mozilla/5.0 (Windows NT 6

  • 用javascript判断IE版本号简单实用且向后兼容

    今天一个项目中需要判断IE版本号,又因为 jQuery 2.0 去除了对浏览器版本号的判断(它推荐特性检测),于是就看到一老外写的一段代码: 复制代码 代码如下: var _IE = (function(){ var v = 3, div = document.createElement('div'), all = div.getElementsByTagName('i'); while ( div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i

  • 用JS判断IE版本的代码 超管用!

    方法一: 复制代码 代码如下: <script language="javascript"> function getIE() { if(navigator.appName == "Microsoft Internet Explorer") { if(navigator.appVersion.match(/7./i)=='7.') { //是IE7,不跳转 } else { //不是,跳转 location.href='http://127.0.0.1'

  • IE的有条件注释判定IE版本详解(附实例代码)

    IE的有条件注释是一种专有的(因此是非标准的).对常规(X)HTML注释的Miscrosoft扩展.顾名思义,有条件注释使你能够根据条件(比如浏览器版本)显示代码块.尽管是非标准的,但是有条件注释对于其他所有浏览器作为常规注释出现,因此本质上是无害的.有条件注释在Windows上的IE5中首次出现,并且得到了Widnows浏览器所有后续版本的支持. IE的有条件注释及其有效,而且非常容易记住.主要的缺点是这些注释需要放在HTML页面中,而不是放在CSS中.这样,当你不需要这些东西,或者有所更改的

  • JavaScript判断IE版本型号

    下面通过代码给大家讲解下,具体请看下文: IE浏览器与非IE浏览器的区别是IE浏览器支持ActiveXObject,但是非IE浏览器不支持ActiveXObject.在IE11浏览器还没出现的时候我们判断IE和非IE经常是这么写的 复制代码 代码如下: function isIe(){      return window.ActiveXObject ? true : false;  } 但是在IE11中上面判断的返回的是false,我自己在IE11测试了下如下代码: 复制代码 代码如下: al

  • javascript判断office版本示例

    使用JavaScript判断office版本,在项目开发中非常有用,由其是在OA系统的在线office编辑,我们需要让office在线编辑工具同时支持office的多个版本,例如office2003.2007.office在安装的时候,会在注册表中写入键值,具体位置为HKEY_CURRENT_USER/Software/Microsoft/Office. 我们打开注册表就可以看到office的版本,office版本与注册表键值对应关系如下: 复制代码 代码如下: 11.0         off

  • JavaScript判断浏览器版本的方法

    因为业务需求,项目经理让我做一个判断当前浏览器是否是谷歌浏览器,并确定谷歌浏览器版本,不满足谷歌浏览器和版本就显示一个页面提示升级,满足条件就跳转到我们的一个项目,下面先来实现这个: 1.当前浏览器是否是谷歌浏览器和确定浏览器浏览器版本号 JavaScript实现: /* 检查浏览器是否为谷歌 */ (function() { //取得浏览器的userAgent字符串 var myBrowser,chromeVersion,version,userAgent = navigator.userAg

  • CSS布局中可以用javascript判断浏览器版本

    if (window.XMLHttpRequest) { //Mozilla, Safari,...IE7  alert('Mozilla, Safari,...IE7 '); if(!window.ActiveXObject){ // Mozilla, Safari,... alert('Mozilla, Safari'); } else { alert('IE7'); } } else { alert('IE6'); } 看看运行效果: if (window.XMLHttpRequest)

  • JavaScript 判断浏览器类型及版本

    几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的Chrome浏览器.由于Chrome出生名门,尽管他还是个小家伙,没有人敢小看他.以后,咱们常说浏览器的"四大才子"就得改称为"五朵金花"了. 在网站前端开发中,浏览器兼容性问题本已让我们手忙脚乱,Chrome的出世不知道又要给我们添多少乱子.浏览器兼容性是前端开发框架要解决的第一个问题,要解决兼容性问题就得首先准确判断出浏览器的类型及其版本. JavaScript是前端开发的主要语言,我们可以通过编写J

  • javascript 判断当前浏览器版本并判断ie版本

    javascript 判断当前浏览器版本并判断ie版本: <span style="font-size:18px;">方便以后再次使用:</span> <span style="font-size:18px;">1.判断ie版本</span> <pre name="code" class="javascript"><span style="font-s

  • 原生javascript和jquery判断浏览器版本等信息

    复制代码 代码如下: <script type="text/javascript"> //jquery判断浏览器信息 $(function(){ var bro=$.browser;//获取浏览器用户代理信息; var bro_msie=bro.msie;//判断是否为ie浏览器,假如为ie浏览器就返回:true,否则返回:undefined; var bro_firefox=bro.mozilla;//判断是否为火狐浏览器:假如为火狐浏览器就返回:true,否则返回:un

  • 利用JavaScript判断浏览器类型及版本

    本文将介绍如何使用Javascript来检测浏览器的类型以及版本号,包括猎豹浏览器.搜狗浏览器.傲游浏览器.360极速浏览器.360安全浏览器.QQ浏览器.百度浏览器.IE,Firefox,Chrome,safari,Opera等. 效果图 实例代码 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF

  • javascript 判断当前浏览器版本并判断ie版本

    javascript 判断当前浏览器版本并判断ie版本: 方便以后再次使用: 1.判断ie版本 //js判断Ie 版本 function IeVesion() { var Sys = {}; var ua = navigator.userAgent.toLowerCase(); var s; (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s

  • js判断浏览器版本以及浏览器内核的方法

    本文实例讲述了js判断浏览器版本以及浏览器内核的方法.分享给大家供大家参考.具体实现方法如下: js判断是否移动端及浏览器内核 var browser = { versions: function() { var u = navigator.userAgent; return { trident: u.indexOf('Trident') > -1, //IE内核 presto: u.indexOf('Presto') > -1, //opera内核 webKit: u.indexOf('Ap

随机推荐