zoukankan      html  css  js  c++  java
  • 完美且精准的 IE10- 版本检测。

    通过动态的写入条件注释的方式,来判断当前的ie浏览器的版本,优点是,对比userAgent字符匹配,要精准很多,应该说是100%正确,缺点就是要通过JS写入条件注释,拖慢页面的加载速度。

    如果对于只判断ie中的ie6,强烈建议使用以下方式:

    1 !-[1,] && !window.XMLHttpRequest;

    首先看一下IE下的条件注释的格式:

    <!--[if IE n]> <![endif]-->

    * 需要注意的是--与[ 之间没有空格。

    * IE10+不在支持条件注释。

    接着我们要知道一个小的知识点,那就是IE10 - 都支持document.all属性。

    好了,下面贴具体的代码:

     1     var _IE = (function(){
     2         var version = null;
     3         if(document.all){
     4             var div = document.createElement('div'),
     5                 all = div.getElementsByTagName('i'),
     6                 version = 5;
     7             while(div.innerHTML = '<!--[if gt IE '+ (++version) +']><i></i><![endif]-->',all[0]); 
     8             //while循环的第一个参数:循环的第一个参数是一个执行的语句,只要当前IE的版本号大于依次循环生成的版本号,那么就往div里面加一个i标签。
     9             //while循环的第二个参数是控制循环的条件。
    10             (-[1,]) && (version==6)?version=10:''; // 用于解决在IE10 时不支持条件注释的问题。
    11         }
    12         return version;
    13     })();

    调用方式:

    alert(ieVersion());

    ------------------------ 睡觉去~~~~~~~~~

  • 相关阅读:
    keras:InternalError: Failed to create session
    centos 常用命令
    centos7 安装gdal2.3.1
    centos mysql初探 -- 配置、基本操作及问题
    machine learning 之 Recommender Systems
    machine learning 之 Anomaly detection
    centos R包 tidyverse安装
    centos 问题解决记录
    R python在无图形用户界面时保存图片
    隐私政策
  • 原文地址:https://www.cnblogs.com/HCJJ/p/5249182.html
Copyright © 2011-2022 走看看