JavaScript判断IE版本型号


Posted in Javascript onJuly 27, 2015

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

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/)
   }
 };

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

Javascript 相关文章推荐
在IE模态窗口中自由查看HTML源码的方法
Mar 08 Javascript
input+select(multiple) 实现下拉框输入值
May 21 Javascript
jQuery中获取Radio元素值的方法
Jul 02 Javascript
使用JS 清空File控件的路径值
Jul 08 Javascript
Visual Studio中js调试的方法图解
Jun 30 Javascript
使用jquery实现仿百度自动补全特效
Jul 23 Javascript
jQuery实现响应鼠标滚动的动感菜单效果
Sep 21 Javascript
微信JSAPI支付操作需要注意的细节
Jan 10 Javascript
Vue Spa切换页面时更改标题的实例代码
Jul 15 Javascript
Vue2 添加数据可视化支持的方法步骤
Jan 02 Javascript
JS原型对象操作实例分析
Jun 06 Javascript
Vue实现图书管理小案例
Dec 03 Vue.js
javascript通过获取html标签属性class实现多选项卡的方法
Jul 27 #Javascript
readonly和disabled属性的区别
Jul 26 #Javascript
javascript实现继承的简单实例
Jul 26 #Javascript
IE10中flexigrid无法显示数据的解决方法
Jul 26 #Javascript
javascript实现将文件保存到本地方法汇总
Jul 26 #Javascript
javascript获取当前的时间戳的方法汇总
Jul 26 #Javascript
鼠标经过子元素触发mouseout,mouseover事件的解决方案
Jul 26 #Javascript
You might like
PHP如何编写易读的代码
2007/07/10 PHP
PHP获取类中常量,属性,及方法列表的方法
2009/04/09 PHP
php引用返回与取消引用的详解
2013/06/08 PHP
php里array_work用法实例分析
2015/07/13 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
PHP图像处理 imagestring添加图片水印与文字水印操作示例
2020/02/06 PHP
Nginx+php配置文件及原理解析
2020/12/09 PHP
javascript里的条件判断
2007/02/27 Javascript
JS限制Textarea文本域字符个数的具体实现
2013/08/02 Javascript
jquery分析文本里url或邮件地址为真实链接的方法
2015/06/20 Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
2017/01/23 Javascript
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
vue路由教程之静态路由
2019/09/03 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
2020/11/05 Javascript
[00:12]DAC2018 no[o]ne亮相SOLO赛 他是否如他的id一样无人可挡?
2018/04/06 DOTA
为什么选择python编程语言入门黑客攻防 给你几个理由!
2018/02/02 Python
Python 装饰器实现DRY(不重复代码)原则
2018/03/05 Python
python3.7添加dlib模块的方法
2020/07/01 Python
Python爬取网页信息的示例
2020/09/24 Python
Python 串口通信的实现
2020/09/29 Python
H5 canvas中width、height和style的宽高区别详解
2018/11/02 HTML / CSS
香港礼品网站:GiftU eshop
2017/09/01 全球购物
利物浦足球俱乐部官方商店(美国):Liverpool FC US
2019/10/09 全球购物
自荐信格式范文
2013/10/07 职场文书
在职人员函授期间自我评价分享
2013/11/08 职场文书
美容师的职业规划书
2013/12/27 职场文书
乡镇庆八一活动方案
2014/02/02 职场文书
销售助理岗位职责
2014/02/21 职场文书
经典团队口号大全
2014/06/21 职场文书
专题民主生活会对照检查材料思想汇报
2014/09/29 职场文书
门面房租房协议书
2014/12/01 职场文书
诚信承诺书
2015/01/19 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
小学作文之描写天气
2019/08/15 职场文书
导游词之广州陈家祠
2019/10/21 职场文书
xhunter1.sys可以删除嘛? win11提示xhunter1.sys驱动不兼容解决办法
2022/09/23 数码科技